EEVblog #900 - STM32 ARM Development Board

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hi today we're going to take a look at the St stm32 arm cortex-m 3 chipset and a very low cost development tool for this this is basically for me to get up to speed for the stm32 ARM Cortex our chipset the development system things like that because one of my new products is going to be using this chip and I'll mention that in a minute now I've got a new set up today I'm obviously doing a webcam capture here at my desk and I can do funky stuff like go over to my screen capture and embed my little head down in the corner and hello I can play around with the actual board and this is the board that we've actually got here today it's the let's go over it is the stm32 el discovery kit and this thing is only here it is it's only 13 bucks 83 on digi-key so it cost bugger-all I got it from local art files that cost a bit more but they had it available so it's extremely low cost they're practically giving the thing away and it's a very powerful art micro which we'll take a look at now this is what we've got the stm32 el discovery kit this is for the stm32 el series not to be confused with a regular stm32 series st and most of the manufacturers out there have a plethora of different chip sets and different series and this subtle variations between them but this is the El and if you might be able to guess what that stands for stands for low-power and some of the features aren't this is why I'm particularly choosing this chip as I'll go into in a minute is its low power functionality but this is a nice little board with the chip set the programmer and debugger built in and also a little arm LCD as well because I'm using it in an LCD application and we're going to try and get this thing up and running and see what it can do now somewhat confusingly this is the 32 L 1 5 2 C and that is different from the actual chipset I'm using product which is the D chipset the one-five 2d and they are different chips you can actually get a development board for the one v 2d but it's like 300 bucks here and well yeah no but this C version here is practically an identical eye chipset and it's 13 bucks it's just crazy and it's got an in circuit our programmer built into the thing as well and if we actually have a look at the data sheet for the differences between the one v 2d and the C one that they're basically very very similar the only difference is that the D version that I'm using my product comes in well it's got more memory it's got a 384 K a flash but it comes in 144 PL QFP package there l whereas the one the C version that we're looking at only goes up to 256 K and only goes up to a hundred pin QFP package but apart from that they're you know very basically identical chips really now let's take a look at some of the functionality of the stm32 L chipset and obviously ultra-low power they've put that like first right up the top of the datasheet there's a reason for that is because it is pretty done low power and it operates from one point 6 5 volts to 3 point 6 volts point 219 nano amps in standby mode it's got three different wakeup pins one point one five amps micro amps micro amps standby mode including the internal real-time clock that's very good 440 nano amps stop mode and it's can use 16 different lines to wake the thing up like if you press a button or something like that that's what the wake up lines mean if you hook up a button to one of the external inputs for example you have a keypad then that can wake it up out of that and it's got an eight point six micro amp low-power run mode so that would be using the internal like 32 kilohertz oscillator to do that but when you're using external crystal 185 micro amps per megahertz run mode the D version is actually a bit more it's 230 micro amps per megahertz in run mode it's a bigger processor it's got more memory and stuff but apart from that they're pretty identical in our 10 nano amps i/o leakage and all that sort of stuff anyway it's an arm cortex m3 processor works from 32k up to 32 megahertz yeah the MIPS per megahertz if you're into that sort of thing it's got a memory protection unit blah blah blah ultra-low voltage detector all that sort of stuff it's got an internal 32 kilohertz oscillator with RTC and it's also got an internal high speed oscillator as well plus minus one percent that's pretty done handy and as I said the low-power 37 kilohertz 30 I think I said 30 before 37 kilohertz RC mode and it's got a internal PLL as well for USB operation USB and you are supported for boot loaders and things like that fantastic my product is going to use a boot loader and load firmware images from an SD card which I'm going to hook up to it so you'll see more about that in the future no doubt JT trace debugging all that sort of stuff 70 iOS of 5 volt are tolerant so that's very nice so you can don't need any interface voltage translation chips or anything like that it's got 32 K of RAM this version that we've got here for our 13 buckboard is 256 K a flash memory with ECC it's got a squared prom built in which is one of the advantages that I will be making use of and also a big reason why I chose this chip in the product is that it has an LCD driver as well 8 by 40 segments which is pretty much what I need I think I need like 36 segments or something like that so and it's got decent analogue stuff as well it's got two op amps are building not sure the performance of those I don't think I'm going to be able to use those at all our 12 bit ADC excellent at 1 Meg samples per second with 25 channels fantastic it's got a DAC as well a lot of micros don't have Dax but it's got a 12 bit DAC with a two-channel DAC awesome so you can do like stereo audio or something like that perhaps with output buffers and to ultra-low-power comparators as Mel well with wake up capability DMA controls if you're into that sort of thing USB 2 3 you arts built-in 8 up to 8 SP is depending on the chip that you use or to I two S's it's got to I squared C buses 11 timers blah blah blah 6 16-bit timers all that sort of stuff and it's got um capacitive touch sensing as well up to 23 channels and CRC calculation as well so as you can see it's a very powerful and versatile arm micro Sol and you can get the development board for 13 bucks amazing when I was a boy and just as a bit of background my original product design actually used a pic 24 it used a 24 FJ 64 GA 310 and I've actually got a several prototypes here actually using that but we decided to we needed more memory more functionality all that sort of stuff so we looked to move to the 32 bit pick and well the third pick 32 MX and I I liked them they're decent parts and things like that but the problem is you'll notice the features here nowhere does it really mention low power it's got a bit of power management modes but like it's not Tooting its own horn when it comes to that and you read the datasheet here where you know they're not Tooting the horn of the low-power functionality whereas if you go to the data sheet for the STM look stm32 ELLs there it is BAM these are low-power parts they're selling that it's the big selling point right up there it turns out I think you have to go I won't go into it but I provide links down below if you want to have a look the pic32 mx3 Oh something that we were looking at using actually has like five times the power consumption or something like that it's a huge drastic difference in that and that power consumption is really very important in the product I'm developing the other thing about the microchip 1 the 32 is that it did not have a building LCD controllers who would have had to use an external LCD but the company I'm doing this company in this design in combination with they had used an external LCD controller before so that wouldn't have been a drama but the original pic 24 I had actually had the LCD driver built in and it actually had the nano watt xlp thing and it was very low power in fact slower power and then then then st arm 32 stm32 this is 150 micrograms per megahertz run mode and if you remember this one was 185 microns per megahertz run mode so technically the pic 24 f at lower power 400 nano a real time clock and calendar operation 400 nano amps if we go over here it was a standby mode plus RTC there you go it's like almost triple the consumption but it's still bugger all the stm32 l series in particular still more than good enough to up meet the specs but if you're going for real ultra-low power like the best you can get in the industry you probably wouldn't be using something like this but for my purpose is good enough and it's probably I don't know three to five times better than the pic32 and it's got all the LCD driver and everything built in beauty now you might be asking what do we need to actually program these stm32 il micros well you only need one of these things if you don't have the development board you only are you get the st-link the two here it's called and it's 22 bucks 61 and it looks like you get all the adapter cables and serial cables and everything with it beautiful it costs bug roar because as you'll see there's bugger all in here now there is actually an ISO well I sold version of this this is just exactly the same thing but it has an isolated USB port in it and if you're worried about you know if you've got a ground reference product and things like that how not to blow up your oscilloscope I've done a video on that I might have to link that one in then you want the isolated version but anyway the good thing is is that this kit comes with essentially that thing built in there well there we go on board st-link v2 with selection mode link to use the kit as a stand-alone programmer so I don't even have to go by the program if you've got this development board you'll notice the header on the side here now we can go over to here you'll notice that the header there it is right there and that can you can just jump that over to your product and it does exactly the same thing as the programming tool unbelievable so other stuff we've got on here can be powered from the USB as we'll find out we'll plug it in in a minute we can measure the chip current the idd current fantastic that's what the little jumper link down there will be for it's got a alphanumeric LCD on there a 14 segment LCD on the thing and got LEDs and push buttons and stuff like that anyway it's exactly what I want uses the chipset allows me to play around with the software programming tools and measure current consumption and typical current consumption and stuff like that so we know I like it let's power it up see if it does something hopefully it comes pre-programmed and if we actually have a look at the pack that it came in there's nothing else in there except the board and you wouldn't expect it for a 13 bucks but it looks like it has some operational stuff on the back and here we go I'm going to plug it in and hopefully it does something it says to put the link in well there's there's different positions we'll plug it in there tada look at that there we go discovery boom JP one is on that's JP one there you can probably see that and we've got lights flashing and it's measuring the supply voltage so obviously it looks like it's got a three volt voltage regulator on there and that is very nice so let's um let's just repower that or reset it yep beautiful and can we play with the slider no slider doesn't do anything at this stage let's see if we can change mode shall we sorry I've got this propped up on a box and I have no idea what percentage what that means not quite sure what's that it's not some sort of counter hello sleep mode point Oh run mode it looks like it's cycling through and measuring the power consumption this is fantastic this is great sleep mode 260 micro amps run mode ah beautiful let's push this again so it comes pre-loaded air we go that's using the low-power oscillator 3.7 micro amps low power runs 7.6 micro amps in the low power run mode there you go and the card here actually tells you what the what the different modes are there for my auto focus on my Logitech c920 webcam is not working that great I had to set the other one manually the one on the left there for the board anyway um you have got the different modes and that's great it measures I didn't expect it to measure the power consumption I thought I'd have to take the jumper link off that's very common on these development boards you take the jumper link off and then you insert your current meter in there and measure it but that's that's terrific beautiful it's exactly what you want if you're into low power if you want to low power arm processor this one's great I presume that's a live measurement let's see if we find the schematic let's press that button one more time though did we go into another mo one point now what's that these are all the different modes I mean these modern processors have so many different mo it's on them standby yep standby wake up okay 360 nano amps beautiful I love to know if that's a real live measurement of that anyway we're back there we go back from the future let's change the jumper link here it restarted the process because it interrupts the thing and it looks like so anything different it's the same that's the same that's different it's milliamp mode it's displaying the current in milliamps now 0.03 yeah 30 micro amps so it looks like jumper up is my cramps and numb jumper down below is milliamp so there you go at night yeah well it's displaying my cramps now but it's like that's 20 nano amps Wow nights down in the that's interesting I want to have a look at the schematic and seen exactly how it's measuring this and doing this because there's nothing else on the board you'll note that it's got it's got the main processor the external crystal isn't fitted so if you want to put in your own external crystal no where as you can it's got a 32 K it's got a 32 kilohertz external crystal here it's hard not look at the screen 32 kilohertz external crystal and there's basically nothing else there's like there's nothing on the bottom of the board by the way so you can't actually hook up a battery by the looks of it that's nice it's not some reserve stuff up the top don't know that what that is we'll have to read the manual have to RTFM I wonder if we can use the slider the sliders got a piece of perspex on there which is quite nice so anyway I love how it measures the current consumption it's beautiful and if I follow the link on there are st.com STM 3 - one L discovery it takes me to this page here here it is and this has what's this STM cube or one I don't know they keep throwing names at me I don't know embedded software I use low level drivers USB filesystem artists Wow touch sensing graphic coming with examples run on ST boards cube is an STM original initiative to ease developers line to reduce development effort blah blah blah right so the quarter STM cube and that's their initiative to ease development I don't get it anyway consistent and complete embedded software offer that frees the user from dependency issues excellent alright to play here SEM cube overview oh we can watch this hopefully the audio comes through and we've got different video showing you alright anyway generates high-level code and all that sort of jazz which is great sorry it uses high-level GUI to generate initialization code for your micro bit Oh shoosh because one of the problems with developing for micro especially for the first time if you're not used to it is all the initialization and setup stuff of all the registers and everything else you need to do just to do basic stuff so if you can get a high level GUI interface that takes care of all that stuff for you then yeah great you'll be up and running much quicker so can actually go down to get software here and we can get the software version for 15.1 get software oh yeah blah blah blah except ah bite me this is just when a company's gonna learn this just pisses people off took this sign you up to it they're just going to use crap an email addresses anyway and names and fake names and everything and to like I've got now going to go to my email to get the link to now Oh hate this crap so while that's downloading about 150 Meg or so what development tool chains does it use what uses the IAR are embedded workbench which i've used a long time ago in a galaxy far far away keel arm i don't think i've ever used the keel software and the GCC one as well so there you go but it's not like there's nothing obvious you know you go to like the product page here and there's got like there's technical documents and descriptions and things like that but there's nothing ah that sort of you know maybe you got to watch the videos and go through step by step but there's nothing like download this and it just includes let the GCC compiler for example by default with all the stuff already set up for this particular micro and things like that so it's not you know and if so for a beginner coming in or how do I use this these ARM chips it's you know there are certainly better options out there to actually do it so yeah I'm going to have to figure out exactly what I need here are whether or not I'll use the GCC or whether or not I'll use the IAR embedded workbench because I think you get a free version up to 32 K or something is it don't quote me on that but you get a anyway I think it is I think you might get a free version of the IAR and maybe it's got some optimizations disabled or something like that but anyway I I have not used the GCC arm compiler before so I don't know but they do have these things getting started with the software development tool chain document and things like that but there is no you know like click here to download the software kind of thing so it's it's just not there they've got that code compiler which I'm downloading at the moment that's actually not a code initialization thing but that's just to generate initialization code it's not I don't believe it will include any compiler in there at all um and by the way no schematic I can get the Gerber files I can get the Bill of material so I downloaded the Gerber files they're all there so that's hunky-dory but where's the original PCB our file it's not there if you wanted that um and the schematic I can't find it it ain't here and if I actually go over to digi-key here it does have look there it is the stm32 l15 to see Disko schematic i click on that and wha now did link through to the page for the discovery firmware package which is what we want I want the code for this thing to see exactly how it's doing the current measurement and things like that if I can't get the schematic still don't know where that is um look they got some documents here current consumption measurement and touching touch sensing demonstration of firmware so if we have a look at that here it is here's the application note tells you all about it fantastic so their documentation is pretty good here's the look it's got separate idd measurement circuitry on here so that's the you know block diagram and don't have the schematic haven't checked further on but tada so here it is we've got two current sense resistors there and it looks like look a digital switch there that is controlled via counter down here it looks like like a separate counter chip because that's the stm32 l15 there and then there's an external differential amplifier with a gain of 15 other electronic switch another electronic switch here um where's all this circuitry I was very curious so the only place left for it was tada there it is sneaky buggers ah but anyway is the schematic in here okay no no schematic at all bummer does it is it LinkedIn down the bottom reference documents updated clock section nah not but hey this is neat it tells you how it all works and the algorithms to actually do it sweet and if you have a look at the IDB jumper P one must be placing the on position except for bias current record operation so I think we saw bias current pop up on the LCD when we had the jumper in the other position there so what bias currents are we measuring because bias current is not static current so anyway can do to compensate errors due to the bias current okay right bias current record okay so that's like a calibration feature by the looks of it bias current this operation consists of storing the bias current values of operational amplifier a hey they've thought of everything compensating for the error in the times fifty amplifier in their suite and bias current mode there we go GP one off yep you betcha and release the switch and it tells us the bias current there we go bingo it's stored it oh well I yep I believe it's now stir well point one six jumping around a bit anyway it's now compensated so now I repower that and it is in it's stored in there by the way this is the slider this is a percentage slider like that so that seems to work reasonably well go in there and that just it's a crude slider like that but that's this is a great example board and now these are the actual wire measurements in the various are modes so 260 micro amps they're run mode 740 micro amps 280 my cramps beauty and we can go into those this is a winner winner chicken dinner right so let's run this Cube MX thing and see what happens next I accept bla bla bla bla bla we don't have to use this and we can just use the compiler directly but yeah we haven't gotten there yet I want to try this out target directory will become yeah right create shortcuts yep right or users yep and here it is looks pretty boring load projects do we have example projects new project here we go oh hey this is what we want BAM straight in thank you very much board selector here we go here's all their boards here we go discovery Wow umm the 1 5 2 where is it stm32 el discovery 1 5 2 disco that's the one where disco in all right so we can I guess go like that oh yeah ok peripherals connected selection initialize all IP or vendor up there's only the one vendor ST micro boards ok so we've chosen our board fantastic it supports very comprehensive supports all their development boards ah isn't that sweet look at that I love these GUI or can use my mouse wheel to scroll in and out there look at that graphical representation for the chip that's actually on there it's the stm32 l15 to our CTX it knows exactly what chips on there it's pulled it up and now look can we go in and click on the individual pins can we do anything no it just hovers over and tells us what that does are there we go yep so the i/o so pb-7 we can then change pb-7 to do anything we want we can change each individual pin to be configured by default these this is what the configuration for this chip is for this particular demo board right so as you can see it's already set up for all the segments comms and everything for the LCD so the segment's anywhere using 3 commons for the LCD there but looks of it and there's the green LED and the blue LED on the board and Wow wow that that is great that is excellent so there you go we can configure all this stuff middlewares configure a shin middlewares looking south corner fat so there's a fat filesystem I guess if we had like an SD card to come configure it's got a free artis I don't know what the what which free are well is it called free artists and the fat filesystem I guess some if the st you've written there a fat file system which allows you to so you can include that then you can go in and you can configure all your clocks look at the block diagram I'm sorry this stuff you usually when you're developing for micros this sort of stuff is in buried in page 300 of the datasheet and you've got to go in there and look it up you know you've got to know that all internal registers such-and-such to select the input on this MUX here you know you've got to do all that but this is can i yeah yeah there we go I can just select which channel of my MUX I want that's nice and then I can add divided by 8 thing so the system timer for the clocks and everything else Wow wow it's almost too powerful you could get lost in here but that is that is absolutely brilliant that's what you want as a beginner you don't want to you know going into the data sheets and try to find this stuff as a real pain in the butt so other configuration stuff RDMA okay so there's all the DMA stuff not really interested in GPIO real-time clock there we go instructional at calibre there your calibration values for your real-time clock RC o RC c no that's not RTC that's some RC C what's that that's something else analog not there what are they called middlewares that's hilarious so time base or there's your timer its watchdog power consumption calculator brilliant so it will give you an estimate of that this is very common in the f eg a field and stuff like that when you want to estimate how much you desire how much current your design is going to take now in this case we're not you know generating various and using macro macro cells and things inside but we are turning on certain functions we are like a certain chipset peripherals and things like that so each each peripheral you turn on and enable and use is going to take extra current what frequency are operating at which clock you're using all that sort of stuff it even takes into account the ambient temperature which supply voltage you're doing um and you can select ah look at this you can select your battery cr2032 Wow Wow so it will it give you the battery life it'll self discharge point one two percent per month normal capacity for cr2032 225 if you've got one or two in series or parallel Wow is that this is neat I like current consumption calculators a bit of a current consumption calculator fan boy if you didn't know so that is neat like I won't go I could spend all day here but the fact that it's got that that is great so that is an excellent configuration thing so here we go so we can generate the code power transitions checker or looks like Andy you can do sequences and stuff this power consumption calculator might be more powerful than I think so if it's pretty good as I thought but yeah look you can add in steps there you go so you can add steps as you change things so if you're going into sleep mode and things like that you can I believe it should be able to calculate all that Wow okay I'm thoroughly impressed alright this stm32 cube MX winner winner chicken dinner anyway we can generate code for all of our current pin outs so what you do is you set up when you got a new project you set up what pins do what and like you might want to change them on the fly of course but this is like the initialization code what this software does is generate your initialization code to get your micro up and running and to be able to do something when you first power it up when you enter your main function for example before it gets to the main function in your code so we can generate a report like to generate Oh create generate code test project location test and then we choose our tool chain oh yeah it's a where's GCC I get no that's the hmm okay no unless there's another name for it other tool chains anyway okay code generator Advanced Settings all right let's just you know project location cannot be found our guy give me a break yeah yeah open firmware package or one of its dependencies requires not available in the do you wish to download this now yeah okay okay why didn't it include it download STM cube firmware I don't know why it needs to do this I'll get back to you okay it downloaded that fine took a little bit but it downloaded and then kept going and compiling the code and it generated the code then I could have opened the project or in this case I've opened the source so here we go main just open this in notepad here and bingo here we go it's generated all the code there it is and yep there we go there's our oscillator initialization code all that sort of stuff see all of this sort of stuff you would have had to have figured out from the datasheet and done manually otherwise your micro sits there and does nothing it just won't work and that's you know a huge hurdle for microcontroller development that's why Arduino is and things like that is so popular every you know it's much higher level than that all all this sort of stuff register level stuff is that taken care of for you but then there we go it sets up the pins and well it's telling you how the pins are going to be set up and then it goes in and and it's set in pull-ups yep it's yeah pull-ups and speed so you can set the GPIO speed you can set the GPIO pull-up and then you can set the GPI Omo it look at like you know there's a lot of initialization code here that that GUI has generated for you thank you mister GUI that is brilliant huge thumbs up and on that to firmware page I was actually able to download the actual firmware source code for this particular demo board downloaded no problems here's like the LCD here are the files on here and we can have a look there there we go stm32 discovery all it's all in there and this is like the code for the LCD for example and very well documented here's the 14 segment mapping and stuff like that how they actually map the things in there and that's terrific so all the example source code is there so you can recommit should be able to recompile this for yourself and then play around with this maybe use this as a basis for your own project but as I said before where is like the link to just download the GCC compiler or something like that with everything set up it's not at all obvious it's not for the beginner this thing like this is the product page for this development board and okay looks like we're going to have to go in here and read this getting started or getting started with the software development tool chains I'm gonna have to read a PDF document before we can just go in there at like you know so first sort of you know experienced users like me who have used another micro for example but haven't really used arm before like this then like I want to know where's the programmer software where's the compiler software and I want it all there on the product page so I can download it and start running with this thing but no looks like we have to read some documents hmm bummer and unfortunately look this document provides an introduction on how to use the following software development environments iar embedded workbench the key or one true studio I've never heard that by a taluk I don't know maybe there's a few italic fanboys out there all tasking which I know fairly well because they used to work at dumb Altium tasking a good compile is used in primarily like the automotive industry and stuff like that really big in the automotive industry but I don't think you know outside of there it's not that huge but really good compilers from out iam hi do the tasks in group at out iam still in the Netherlands I believe anyway are the yeah but where the emission wears GCC like if I did my project if want to go everyone will just assume that I'm going to use GCC everyone uses GCC right it's you know it's the thing to use but this is the getting started guide for this discovery board and it does not tell you how to use GCC doesn't tell you where to get it from it doesn't matter tell you you know like links to a compiled version of it there's the st-link thing so yeah looks like we're going to have to use IAR embedded workbench which is fine I've used IAR before they're excellent excellent tool I love their GUI interface and things like that have used it for like the Atmel another once but I haven't used it for arm before but yeah that's disappointing that GCC is not in there that's a huge oversight so I'm on the IAR embedded workbench website 62,000 users is that all thought that I've more than that anyway that support 11,000 devices blah blah blah 30-day free trial blah blah blah blah but look at this you go to the by page wha-wha-wha request for quotation seriously are you that dumb ia I just put the freaking price there a PayPal Buy It Now button or whatever have different tiers of software if you want sure if you've got some it needs enterprise version for you know a thousand seats at your company or something fine okay quotation for that but me by my little $15 you know embedded discovery thing um this is where the documents point me towards iar they're sure there's some others but I come here and go quotation what's all this no fail and it turns out they've actually got a ton of different versions just for arm look at this they've got functional safety standard cortex cortex m0 limited baseline versions blah blah blah blah blah anyway what we want to do is go into the free trials here and take a look now here's where I said before you do get a size limited kick-start license without any time limit or you get a 30-day full you know pretty much the full thing for 30 days so you can choose which one you want arm the size limiter kickstart one as I said before our 32k restriction all 16 K for cortex versions I saw there's no source code I you don't get the mistress II support see run is not a valve don't not see runners and limited technical support but anyway that allow us to get up and run in anyway but anyway we'll download that and even with you know 32 I'm K size limit and you know might not include optimizations and all the other stuff or does include debugging doesn't say anything about debugging limitations and things like that but you still do a lot in 32 K so yeah that's only a one gig download anyway I've got a reasonable connection so it's already one tenth of the way there yay I will show you my desktop just for fun while we are all the time away look at this there's an option for dongle drivers I don't think I need to install dongle drivers did I a come with a dongle back in the day anyway I'll just install the st-link yep you guessed it online formed and register for your time limited or code size limited version alrighty so after loading it in I got the license keys and all that sort of jazz I can open a workspace and I've downloaded the firmware which you were saw before and if we go into the discovery pack firmware projects let's look at the current consumption touch one that's I inside which is the demo that we're actually running on the board and AW arm here we go so it's got all the different versions here ok and bingo there's the you file let's open it will it work my workspace is up yep there we go there we go we're in like Flynn and I just tried the make function sorry I wasn't recording and it went through with no errors ok so it did actually make that project without error so what I'm going to do here is I'm going to I'm in the main I'm in user and then the main dot see here and it looks like we can just change the text message that is presumably displayed on the LCD so I might simply change that to e V blog I could change it to hello world but you know me L so what you and else do that I don't know that one can be hello world there you go everyone wants the exclamation mark and then we can make this again so if we're going to make here we go building tree blah blah blah blah blah converting number here is 0 okay let's try and download it so remember I have not used this before I have not read any instructions whatsoever are simply loaded in the project this is the best way to get sup set up loading the existing project that compiles with no errors and then start playing around with it and then you know learn that way it's you know it's one of the best ways to do it anyway there's some little buttons up here hang on there we go download and debug download without debug without downloading we want to download and debug we just want to download but anyway we'll download and debug ah so it didn't automatically detect my installed it was supposed to install the drivers the st-link drivers and it just not not not happy at all let's go into projects here download and debug debug without downloading download download active actual application MA well it was supposed to be that easy I'm here it is for the e WM tool chain which is what I'm using basically I'm open the workspace which is what I did got the example demonstration was what I did rebuild all well I did make maybe I've got to rebuild all anyone should have done the business and there no but that's what I got total number of errors and warnings and everything so that's fine and dandy and then not include I didn't do project options C++ compiler why do I have to do that anyway in the are to change the project sentence don't have to do it there you go a download and debug that's all you had to do download and debug I hit that button exactly what I thought and there you go it's supposed to download and debug but it hasn't and that's it that's the entire instructions for the um for the IAR embedded workbench thing that's it and it didn't work thumbs down I know I think it's a peb kak looks like I missed a step after installing the W arm the user should install the st-link v2 driver the original st-link not the v2 the original one does not need a driver apparently but the st-link 2 does see like this should be on the brake a it's in the document okay but it's yeah alright I'll stop complain and it's in there I probably should have read it so you have to do this after you install the IAR workbench so let's do that so it's supposed to be in C IR systems embedded workbench arm drivers st-link tada st-link upgrade no it says to run thee no ok windows I guess I've got to go into windows 7 no st-link nope doesn't match the description there you go st-link st-link v to underscore USB driver it doesn't match that description ok so I ran the batch file here and it's going to let me install the drivers I'll probably have to remind have to reconnect it of course but it may take some time to complete thank you very much but once you know the little things where it doesn't match the description and it's buried away you've got to know like they need to have a more compelling first-time user experience because you know you can be left scratching your head if you if you manage to figure out how to download iar and all that that open the workspace and all that you're following this truck Sandman doesn't kind of work and then no what is one of these error messages down here mean that at fatal error failed search for probes ensure that the USB drivers are install late you know yeah it just occurred to me you remember way back at the start where I was installing this thing and it said do you wish to install like the u.s. like the dongle right that dongle thing was that is that what they're talking about maybe if so that's you know dodgy terminology anyway hopefully it'll work now can we just do it can we just do it yes well that it's flashing it's downloading will we get eevblog hello run it worked I didn't have to reconnect it did I accidentally set up a breakpoint toggle breakpoint I don't know no why is it pointing to int main there anyway it downloaded maybe I saw an option leave target running here we got like so all this is enabled now so leave target running is that no maybe if I hit the reset button hey eevblog we know weena chicken dinner so there you have it this has been long enough sorry for the length of this it was sort of like a me going through it sort of like first try just to see how good the how easy the tools were to set up and well ultimately it took like a few hours to do this granted I'm shooting a video and doing you know everything else but me and I'm around but hey you know it wasn't the best first impression not suitable for a complete beginner and maybe some things might be a little bit you know annoying for like an experienced person like me but somebody who hasn't touched the arm toolchain like this before so anyway I was quite surprised that there is no support or it doesn't look like I'll stand to be corrected no support for the GCC or whatever or you know like I don't know how to use GCC with this thing yet I'm sure everyone's screaming it's easy to set up the command line do this do that yeah whatever okay I got arm the IAR embedded workbench working fine as long as they followed the silly instructions to the letter and installed the drivers and everything's hunky-dory I'm up and running now so you know yeah it's not the best first impression I mean if you go over to the you know just the website for this thing it's a little bit quirky doesn't really have everything it's not you know everything's not in the one place stuff like that I mean this is the main page for the discovery kit and you know it leaves a bit to be desired but ultimately you know after a couple of hours of mucking around anyone should be able to get a tool chain up and running for this thing GCC or something might be a bit more confusing or take longer they will don't have the step-by-step instructions for that I think they should but anyway you can get a 32k version of the IAR embedded workbench you can do some decent stuff with that although this thing's this board has 256 K so you know anyway if you want the full version you pay the money etc but for a 13 dollar arm development board and this part what what it can actually do is is very impressive the functionality for it and everything else it it's an absolute winner what is the what is the price on these the stm32 l15 - I won't include the rest of it and integrated circuits there we go what do we got sort by price they're not cheap in one offs all right there we go yep the one five to see that we're looking at I don't know if it's exactly the same one but two bucks thirty you know Oh actually that's fifteen hundred quantity so yeah we have to go down before we can get to anyway you know a few bucks it's not the cheapest but it is a high end you know quite a powerful arm micro and for a 13 buck development board yeah why the hell not I like its low power modes and everything supports LCD and all sorts of stuff and hopefully you'll see some more upcoming videos all those supporters might actually see those videos before or find out information on that before the regular audience because the product I'm working on is not general knowledge yet so anyway um that ultimately worked in the end just a few little quirks the odd peb CAC or two as to be expected so if you combine that low-cost development ball which is really nice with the power management and the LCD and everything else the low cost of programming tools for them easily available they've gotten even an isolated version which is very nice which is still even reasonably priced and then when you combine in the awesome are stm32 y cube MX software like configuration software that's absolutely brilliant looks to be very comprehensive very powerful and then I think they've got a winner here and combine that with the chip the capabilities of these arm STM chips I'm I think I might be a stm32 fanboy and certainly like this solo power series anyway very comprehensive capabilities so well worth a look at it if you're right in to develop there might be ones that are slightly easier to get started but this one's very compelling in the arms no worries anyway I hope you enjoyed that you want to discuss the arm development tools and tell me Dave's you're doing it all wrong yeah go ahead comments down below catch you next time hi in this video we're going to take a look at a couple of affordable fpga starter kits to get you into FPGAs but before i jump into that i thought i'd just do a quick little primer here on exactly how easy is it to hook up and use an fpga as i mentioned in my previous videos which I'll link in the answer is not very easy at all take for example your classic micro controller here you pick your avi you
Info
Channel: EEVblog
Views: 225,193
Rating: undefined out of 5
Keywords: eevblog, video, st, stm32, arm, arm cortex, datasheet, how to, tutorial, development board, kit, iar, embedded workbench, compiler, programming, stlink
Id: mkx4qZCCHqI
Channel Id: undefined
Length: 54min 4sec (3244 seconds)
Published: Wed Jul 13 2016
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.