![]() |
Forum Index : Microcontroller and PC projects : Time to give up ?
Author | Message | ||||
spock57 Newbie ![]() Joined: 24/09/2017 Location: United KingdomPosts: 4 |
!!!!!!!!!!!!! WARNING RANT !!!!!!!!!!!!!!! How the hell does anybody get anything done these days? I have been trying to get my head around pic programming .asm for 15 years the chips seem relatively simple but I have never been able to get MPLAB working .I have never had the same fault on each installation, the pickit3 is crap again same problem as with the rest of Microchip offerings. I was OK with the 1802 Z80 and 6809 (my favorite), but pic no go. I hate C and find it completely incomprehensible, interpreted basic is fine, compiled basic would be nice but we are back using the bloody awful pickit2/3/4. Arduino oh the great structured language (C ish) just bolt the libraries together and go, thats until you find Vx.1 wont compile the code Vx.2 will but not the older libraries, frequently the resources the libraries use are not stipulated so you find the program bombs because of conflicts, the ethos only comment when necessary seems to be have interpreted as don’t bother commenting. Then there is windows, Win 3.11 hated it, Win95 (things looking up), Win 98(getting there), Vista (oh crap), Win 10 (WTF!!!!). My works PC was supposed to be used for updating medical software but by time all of the security patches were installed by IT (bless em) the PC was so unstable we had to pay a small fortune for the manufacturer of the equipment to come in and do it for us because they had a PC that apparently worked. 1981 my Tandy model 1 took 5 minutes to load a program from cassette, today I turned on Windows 8 (AARGH) it took 10 minutes for me to reinstall MS word and another 10 minutes for windows to stop telling me the updates were finished, just what have I gained? Micromite at last some sanity, burned it into pic32 with pickit3 no bother all worked great Mmedit no bother, few weeks later used pickit for another pic 32, no-go (bloody PK3, Microchip, Win10 -AGAIN) used the microbridge no bother. So it seems there are programmers out there that can make user friendly software that actually works. Most of my projects need more than a NE555 timer but less than a Micromite anybody fancy creating tiny MM basic for pic 12F18xx and 16F18xx. ![]() |
||||
CaptainBoing![]() Guru ![]() Joined: 07/09/2016 Location: United KingdomPosts: 2170 |
Morning Spock. I understand your frustration and I agree that every time I fire up my PK3 I seem to spend 30 mins piddling about with some problem. I also come from an assembler background (12 years writing Z80 professionally) and yes the PIC architecture is a culture shock, I found mainly because of the Harvard architecture but also because some of the mnemonics aren't intuitive on the PIC. I understand both of these are addressed with later PICs to some degree but I no longer do ASM - perhaps a few KB a year of assembled stuff. I use MMBasic for a lot of my stuff and Great Cow Basic for time critical stuff (it compiles to PIC hex or asm)... I know all the "basic is cr4p" arguments etc but who cares? it is what you feel comfortable with and I never got into C If you still fancy ASM, I made a load of macros to add Z80 like mnemonics, sensible jumps, compares etc. even today I have to single-step my brain through BTFSS - it just doesn't work right for me... I replace it with JNZ or RETC and it's lovely. Great Cow is a nice mid-way one thing it lacks is floating point so if you need decimals you have to work with the order of magnitude incorporated and then format before use. bit of a pain but not a show stopper. On the upside, its management of other data types is really nice it even keeps track of BIT types with flag arrays in system variables. You can find my macros here: http://www.fruitoftheshed.com/PIC%20ASM.AllPages.aspx and some GC Basic to look at here: http://www.fruitoftheshed.com/GCB.AllPages.aspx you might find something that inspires the next step. Sorry about PK3... I always seem to have a battle after I haven't used it for ages. My electronics" machines are all window 7 - the last version that was any good. I am on borrowed time regarding updates but I'll cross that bridge when I get to it. I hate the Windows 10 interface and that everything gets moved around or updated without being consulted.,.. do I not "own" anything anymore? On the "less than a micromite" argument... I used to think like you but really, they are sub £5 and it's feelings won't be hurt if it has a menial task... if it fits as a solution you should use it. Don't break your back trying to obtain a hardware solution if a bit of clever software on a single chp has got it covered. h |
||||
plover![]() Guru ![]() Joined: 18/04/2013 Location: AustraliaPosts: 306 |
well, it seems to me that perhaps a "nanomite" might be help full for you. Check out bigmik's offerings? I thought he has now a bypass of the pickit on some of his products. These may be too big for you too though. ![]() |
||||
spock57 Newbie ![]() Joined: 24/09/2017 Location: United KingdomPosts: 4 |
Hi CaptainBoing Thanks for the reply I'm not sure why I even started trying to program pics in assembler apart from the challenge and I'm too pig headed to give up but just about smart enough to know I'm not really cut out for assembler. I really do not understand why an editor assembler for say a Z80 with hundreds instructions could be made to run in a few kilobytes in the 80's yet an editor assembler for a pic with about 40 instructions requires several megabytes yes I know there are C compilers and other addons (or bloatware) but 600M+ for the installer! I agree the a less painful option is to use something like great cow basic . I have an old laptop I think I will disable the internet and put all of my software there no updates no popups no interference I'm not sure why a pressure group most probably in America has not sued Microsoft over Win10, goods bought are the property of the purchaser for use as they see fit, they should not have it reconfigured against their will by Microsoft. It's a bit like buying a new car and having company rep drop by to use it for their shopping. Ok I'm a cheapskate the micromite does not cost a fortune and there is also the option of the Nanomite if size matters,I cant resist the temptation to use the least parts which is why I like the 08M2 picaxe. Incidentally when uninstalling MPLABX I inadvertently wiped six months of picaxe project work hence the rant it will take a day to sort the backups, time to do something with a micromite ![]() |
||||
spock57 Newbie ![]() Joined: 24/09/2017 Location: United KingdomPosts: 4 |
Hi plover I already have a couple of bigmick's boards physical size is not an issue it just an 8 pin ic is often enough for my needs it seemed a shame to get a pic32 to do a 10/12/16/18F's job. Pause for thought.............. current price for 12f1840 approx 1 GB pound (Assembly lang) current price for 32MX170 approx 3.15 GB pound (Basic) current price for picaxe 08M approx 2.25 GB pound (Basic) using the 12f saves over 32MX 2.15 GB pounds. Days of development IDE a pain using the picaxe 08M saves over 32MX 90 pence. Easy development bit slow using the 32MX MM program-run-bomb-debug-run.... no fuss MM faster than picaxe with more features but slightly steeper learning curve, easier than assembler, price difference insignificant. Why did I ever think if using assembler |
||||
Tinine Guru ![]() Joined: 30/03/2016 Location: United KingdomPosts: 1646 |
A pint in a non-chavvy pub: 3.5 GB pounds. ![]() |
||||
gadgetjack Senior Member ![]() Joined: 15/07/2016 Location: United StatesPosts: 169 |
If you want to try PICBASICPRO , a compiled basic for pics, Pm me and I will send it to you. |
||||
Quazee137![]() Guru ![]() Joined: 07/08/2016 Location: United StatesPosts: 593 |
I toooo would like to find a compiler basic as sweet/GREAT as MMBasic for the PIC's. I was ok with asm on every thing from the 4004 to the 486's and 8748, 8749. All Zilog chips. Most 6800 and 6500 too. Even had the asm/dasm tapes for the MicroAce 2K kit. Was fun building add on hardware cage and a macro library to support Golfball printer, 300 baud modem bank switched ram/eproms. I would buy the PICBASICPRO GOLD but I have not found any one using it under WINE or CROSSOVER successfully. I use the 170's for all my smaller needs projects. Still looking for time to play with a reflow oven and try the small 28 pin QFN package. Current project is stuffing the 170 28pinner, 12V relay, 3 optocouplers, 3 leds, a push button B1203 isolated power, 5 smd caps, 8 smd resistors and 2 6pin Screw Terminal Blocks in a DIN RAIL BOX. I would have done this with the picaxe 08M. But MMBasic has the pin functions I needed so easily available. |
||||
retepsnikrep![]() Senior Member ![]() Joined: 31/12/2007 Location: United KingdomPosts: 134 |
I use PicBasic Pro Gold daily on non internet WinXP or internet Win7 Machines and have done for years. I use good old cheap pickit2 clones with the associated pickit2 software and updated device files which covers all the devices PB-Pro supports. https://www.piccircuit.com/shop/pic-programmer/55-118-icp02-usb-pic-programmer.html#/51-version-v20 I don't have the issues you describe, although every system has it's quirks. But it works well for me.. Gen1 Honda Insights. |
||||
Grogster![]() Admin Group ![]() Joined: 31/12/2012 Location: New ZealandPosts: 9610 |
We most of us feel your pain, I think.... ![]() (other members please pardon my presumptuousness) I hate assembler - could never get my head around it. I played with C for a little while as a newbie just trying to blink an LED on and off, but it was unbelievably difficult to do it(as a newbie to C), so much so that C gurus like Geoff(MM Creator) and Peter(matherp) that can whip up very useful C routines and extra features in the MMBASIC interpreter, stun me. Each to their own I guess, and I respectfully decline to do any coding whatsoever inside the beast that is C. ![]() I expect it is simply that the likes of Geoff and Peter have had many, many more years(decades, probably) of practise coding in C, to become the gurus that they now are. Just like everyone else, I expect they too found C difficult when THEY were learning it. ![]() ....but then again, some people can pick up languages extremely easily, and others cannot, so again - each to their own... If you want simple-as, then use any minimalistic MM module that features the on-board 1455 USB interface chip, as it will provide the USB-Serial bridge for you, and ALSO supports programming new HEX firmwares into the PIC32 chips WITHOUT you needing to touch the massive Microchip IDE download or the often problematic PK3. I used to have heaps of problems with the PK3 trying to program chips. The most common complaint from it, was that the voltage on the PIC32 was not EXACTLY 3v3 as detected by the PK3 and Microchip IDE/IPE, and it would refuse to program the chip. Very annoying. ![]() Once the 1455 chip came along, all my prayers were answered, and it makes the likes of the E28 or E64 modules a pleasure to use and program. No Microchip software required, only about 300k - yes, 300k - of freeware programming tool. And that even has a GUI for that 300k or so. Better then 600MB or more of the Microchip IDE you have to download, just to get access to the IPE(which is what most people want). You don't even need to INSTALL the freeware 1455 GUI - you just double-click the exe, and you're away laughing. What all that means, is that any MM module with the 1455 chip from any supplier, can be programmed using nothing more then a 300k utility, a standard USB cable, and the HEX file - bliss... ![]() As far as BASIC on lesser chips, I agree with others that Great Cow BASIC is the one to go for there, probably, as that one supports a whole plethora of chips you can run it on. EDIT: What I love the best about MMBASIC is probably the fact that it has a built-in program editor, and it has an immediate mode. That means that EXACTLY like old BASIC computers of the past(Atari/BBC/C-64/Sinclair etc), if the program runs into an error, it will halt with an error at the command-prompt. Other embedded BASIC's DON'T do that. PICAXE BASIC and Great COW(I think) compile and download the program to the chip, but if there is some odd bug, the chip will just crash, and you are left scratching you head trying to work out what you did wrong, and where the bug is. There is the syntax checker on both of those, but ultimately, once the program has been downloaded to the chip, if it runs into problems, the chip just hangs. The MM does not. It stops with an error message, and you can investigate and often fix the bug RIGHT THERE ON THE COMMAND LINE in immediate mode, and then change the master code to fix the bug. I have done that gawd only knows how many times when squishing bugs in the BASIC code on the MM.... It makes program development much, much easier and quicker. Sorry.....looks like it is my turn to rant! ![]() Smoke makes things work. When the smoke gets out, it stops! |
||||
BrianP Senior Member ![]() Joined: 30/03/2017 Location: AustraliaPosts: 292 |
Grogs - +1! ![]() |
||||
plover![]() Guru ![]() Joined: 18/04/2013 Location: AustraliaPosts: 306 |
Hmmm I think 10++ ![]() ![]() |
||||
vegipete![]() Guru ![]() Joined: 29/01/2013 Location: CanadaPosts: 1132 |
Close. Should be: 10++; That semi-colon is important. =============== I'm always intrigued when people have these battles with the Microchip tools. While I do grumble about stuff from time to time, mostly about MPLABX, things generally just work for me. I have many PicKit 3s, where each is configured for a particular PIC family ('F16s, 'F18s, MX32s, '24s & '33s) There's also an ICD, ICD2 and ICD3 and even an ancient PICStart Plus. The ICD and ICD2 are the only ones unused these days. I use both MPLAB 8.92 and MPLABX, programming in assembler and C. Yes, the free versions of the C compilers generate terrible bloated code but when that's a problem, I start moving code to assembler. I've played with Great Cow Basic a bit - it works quite nicely and generates pretty clean code - but I haven't spent enough time with it to get it to perform the subtle dances I sometimes need. Anyone trying to figure out programming these microcontrollers (or any for that matter) needs, in my opinion, to figure out 2 parts: 1) How to generate HEX files and 2) How to program the HEX file into the chip. A third optional skill, with appropriate tools, is live debugging a program running on a chip. I get the occasional problem that is much easier to solve with a debugger. But this is optional. With that said, if a MMite programmed with MMBasic gets the job done, why worry if it's overkill. The chip might cost a bit more but that is far more valuable than a chip that costs 25% but needs days of fighting tools to get anything done. Visit Vegipete's *Mite Library for cool programs. |
||||
Grogster![]() Admin Group ![]() Joined: 31/12/2012 Location: New ZealandPosts: 9610 |
[Quote]With that said, if a MMite programmed with MMBasic gets the job done, why worry if it's overkill. The chip might cost a bit more but that is far more valuable than a chip that costs 25% but needs days of fighting tools to get anything done.[/Quote] Well said. That is it exactly. I do use the 28-pin MM2 chip in lots and lots of things, and it's power is really overkill, but it is familiar to me now, and I know it will just work as soon as you built it 99.9% of the time. Sure, sometimes there are odd things, but these forums and the MMBASIC developers are so active, that any bug in the firmware is squished very proactively. That only leaves ME to sort out MY bugs in the BASIC code! ![]() I also have a couple of different PK3 units. I have one specifically configured as a stand-alone programmer for the 1455 chips. Everything else is PIC32, so once the 1455 is programmed, it can then program the virgin PIC32 chip. ![]() Smoke makes things work. When the smoke gets out, it stops! |
||||
CaptainBoing![]() Guru ![]() Joined: 07/09/2016 Location: United KingdomPosts: 2170 |
zackly... and it provides a hell of a lot of scope for improvement/mods. Like Grogs, I use tons of 28pinners on my own 1.5" square controller boards and I just drop them in all over the place - it's a five dollar fix-all, like a pair of comfy old slippers... familiar and reliable. Of course I don't produce buggy code so that's not an issue ![]() ![]() |
||||
Volhout Guru ![]() Joined: 05/03/2018 Location: NetherlandsPosts: 5089 |
*** removed *** PicomiteVGA PETSCII ROBOTS |
||||
![]() |
![]() |
The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2025 |