Gratis Stm32 value line discovery kit + tävling
Re: Gratis Stm32 value line discovery kit + tävling
Jag fick just hem mina 2 kort och sitter och pular lite.
Ska man starta lite lugnt kan jag rekommendera iar kickstart, krymplingsversionen, då den är väldigt lätt att använda och duger för att utforska lite och kostar inget.
De andra utvecklingsmiljöerna verkar gå lite knackigt att programmera in med, abolic ger en massa felmeddelanden och kan inte känna av mitt kort.
Är det riktigt att man inte kan programmera och debugga med öppen programvara utan att programmera via serieport?
Man får väl anta det eftersom folk sätter ihop serieportar till uart på stm32, synd att man ska behöva hålla på så.
Nu tänkte jag fixa det ändå för att kunna skicka kommandon till mitt kort från terminal.
Är det någon av er som gjort något kul med sitt kort än?
Ska man starta lite lugnt kan jag rekommendera iar kickstart, krymplingsversionen, då den är väldigt lätt att använda och duger för att utforska lite och kostar inget.
De andra utvecklingsmiljöerna verkar gå lite knackigt att programmera in med, abolic ger en massa felmeddelanden och kan inte känna av mitt kort.
Är det riktigt att man inte kan programmera och debugga med öppen programvara utan att programmera via serieport?
Man får väl anta det eftersom folk sätter ihop serieportar till uart på stm32, synd att man ska behöva hålla på så.
Nu tänkte jag fixa det ändå för att kunna skicka kommandon till mitt kort från terminal.
Är det någon av er som gjort något kul med sitt kort än?
Re: Gratis Stm32 value line discovery kit + tävling
Två kort? Köpte du dom eller fick du sampels från tillverkaren via tävlingen?
Har väll inte producerat så mycket roligt än, sitter o skriver funktioner för enklare åtkomst till I/O pinnarna, sen blir de o ge sig på o få igång UARTen, och efter det så kan man börja med det roliga
Själv använder jag Atollic TrueSTUDIO o jag tycker de fungerar rätt bra.
Har väll inte producerat så mycket roligt än, sitter o skriver funktioner för enklare åtkomst till I/O pinnarna, sen blir de o ge sig på o få igång UARTen, och efter det så kan man börja med det roliga

Själv använder jag Atollic TrueSTUDIO o jag tycker de fungerar rätt bra.
Re: Gratis Stm32 value line discovery kit + tävling
Jag köpte ett extra ifall jag skulle ha sönder det första bara.
I Atollic gratisversion tog det stopp för mig när man följde STs guide och skulle trycka på debug, då börjar den klaga, det gick inte att ställa in target, fanns inget att välja på där.
Men det spelar ju ingen större roll, jag kommer knappast överskrida kodbegränsningen i IAR på ett bra tag ändå.
En liten fråga, kan man driva vanliga storleken på led lampor på IO pinnarna eller slår något överströmsskydd för då?
I Atollic gratisversion tog det stopp för mig när man följde STs guide och skulle trycka på debug, då börjar den klaga, det gick inte att ställa in target, fanns inget att välja på där.
Men det spelar ju ingen större roll, jag kommer knappast överskrida kodbegränsningen i IAR på ett bra tag ändå.
En liten fråga, kan man driva vanliga storleken på led lampor på IO pinnarna eller slår något överströmsskydd för då?
Re: Gratis Stm32 value line discovery kit + tävling
Jag driver en röd led via en resistor på 10k, tyckte jag läste nått om 3mA per pinne men vågar inte svära på de då jag inte kan hitta vart jag läste de.
Jag valde att lägga mig på säkra sidan så länge
Jag valde att lägga mig på säkra sidan så länge

Re: Gratis Stm32 value line discovery kit + tävling
Enligt databladet kan man driva eller sänka max 25 mA per utgång, max 150 mA totalt. (Absolute maximum ratings, så det är väl bra att hålla sig en bit under)
Re: Gratis Stm32 value line discovery kit + tävling
Se min post på föregående sida i denna tråd om hur du undviker detta om du ändå vill testa AtollicSBeaver skrev:... I Atollic gratisversion tog det stopp för mig när man följde STs guide och skulle trycka på debug, då börjar den klaga, det gick inte att ställa in target, fanns inget att välja på där. ...
Re: Gratis Stm32 value line discovery kit + tävling
OK Helge, kanske testar det igen senare. Jag har för mig att jag provade det du nämnde men jag kan ju ha gjort fel.
Det verkar som om jag får skaffa lite klenare lysdioder för de jag har är strömsugna.
Kanske kan köra med en förstärkare emellan så länge.
edit:
Jag gjorde så att jag driver dioderna med kortets 3v via en switch (hef416bp) som jag styr med pinsignalerna.
Det fungerar hyffsat, jag kan t.ex. koppla in min switch enable till pinne pc9 och på så sätt få samma signal som blinkar led3 i STs demoprogram så att min lampa blinkar samtidigt och så kan jag se vilka pinnar som är höga och låga (dioden lyser svagt på låg, är helt av på jord, lite störande) istället för att använda multimeter.
Det verkar som om jag får skaffa lite klenare lysdioder för de jag har är strömsugna.
Kanske kan köra med en förstärkare emellan så länge.
edit:
Jag gjorde så att jag driver dioderna med kortets 3v via en switch (hef416bp) som jag styr med pinsignalerna.
Det fungerar hyffsat, jag kan t.ex. koppla in min switch enable till pinne pc9 och på så sätt få samma signal som blinkar led3 i STs demoprogram så att min lampa blinkar samtidigt och så kan jag se vilka pinnar som är höga och låga (dioden lyser svagt på låg, är helt av på jord, lite störande) istället för att använda multimeter.
Re: Gratis Stm32 value line discovery kit + tävling
Tänk på att matningen bara är 2.8 V och det räcker inte för vita och blå lysdioder.
---
I övrigt kan jag berätta att jag nu fått igång kortet, men lite hackande krävdes.
Jag anväder alltså Linux, Ubuntu 10.04, OpenOcd version 0.4.0 och
gnu toolchain från CodeSourcery ( arm-2010.09-51-arm-none-eabi-i686-pc-linux-gnu.tar )
1:
För att bänna flashminnet krävdes lite komplettering av konfigurationsfilen openocd.cfg:
flash bank $_FLASHNAME stm32x 0x08000000 0x20000 0 0 $_TARGETNAME gdb_flash_program enable
samt ett litet fulhack i källkoden till stm32x-drivern.
2:
Att debuggern inte gick igång berodde på att min uppstartsmjukvara satte om klockan till
72 MHz. Kortet klarar bara 24MHz.
Det krävdes alltså lite hackande i uppstartskoden som ställer in klockan.
Jag använder Skeleton C projekt från
http://stm32.spacevs.com/
Kan berätta utförligare om någon behöver göra detsamma!
3:
Problemet med att komma åt IO-portarna bestod i att jag inte hade gjort enable på klockan:
Dessutom måste man initiera portatarna:
4:
Avslutningsvis har jag läst att Licensen från ST uttryckligen kräver
att användaren är professionell och att grejerna endast används i laboratoriet.
Det är alltså inte tillåtet för studenter eller amatörer att labba med kortet!
Det är heller inte tillåtet för professionella att jobba hemma!
Så börja nu spara till rättegångskostnaderna!
(Detta låter som ett skämt, men man vet aldrig när det gäller juridik...)
---
I övrigt kan jag berätta att jag nu fått igång kortet, men lite hackande krävdes.
Jag anväder alltså Linux, Ubuntu 10.04, OpenOcd version 0.4.0 och
gnu toolchain från CodeSourcery ( arm-2010.09-51-arm-none-eabi-i686-pc-linux-gnu.tar )
1:
För att bänna flashminnet krävdes lite komplettering av konfigurationsfilen openocd.cfg:
flash bank $_FLASHNAME stm32x 0x08000000 0x20000 0 0 $_TARGETNAME gdb_flash_program enable
samt ett litet fulhack i källkoden till stm32x-drivern.
2:
Att debuggern inte gick igång berodde på att min uppstartsmjukvara satte om klockan till
72 MHz. Kortet klarar bara 24MHz.
Det krävdes alltså lite hackande i uppstartskoden som ställer in klockan.
Jag använder Skeleton C projekt från
http://stm32.spacevs.com/
Kan berätta utförligare om någon behöver göra detsamma!
3:
Problemet med att komma åt IO-portarna bestod i att jag inte hade gjort enable på klockan:
Kod: Markera allt
RCC->APB2ENR |= 0x10; /* enable GPIOC */
Kod: Markera allt
GPIO_InitStructure.GPIO_Pin = mybits;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_Init (GPIOC, &GPIO_InitStructure);
Avslutningsvis har jag läst att Licensen från ST uttryckligen kräver
att användaren är professionell och att grejerna endast används i laboratoriet.
Det är alltså inte tillåtet för studenter eller amatörer att labba med kortet!
Det är heller inte tillåtet för professionella att jobba hemma!
Så börja nu spara till rättegångskostnaderna!
(Detta låter som ett skämt, men man vet aldrig när det gäller juridik...)
Re: Gratis Stm32 value line discovery kit + tävling
Ja man kan ju använda 5v för att driva dioderna om man vill med en spänningsdelare, men då måste man också ha en switch.
Sven: använder du alltså serieport för att programmera kortet?
ST har f.ö. ett program (endast för windows) som heter ST-link utility som man kan programmera binärfiler med över ST-link, då kan man kompilera i linux och sen programmera in den filen från windows på en annan dator, väldigt omständigt men det bör fungera.
http://www.st.com/stonline/stappl/resou ... assID=1782
Sven: använder du alltså serieport för att programmera kortet?
ST har f.ö. ett program (endast för windows) som heter ST-link utility som man kan programmera binärfiler med över ST-link, då kan man kompilera i linux och sen programmera in den filen från windows på en annan dator, väldigt omständigt men det bör fungera.
http://www.st.com/stonline/stappl/resou ... assID=1782
Re: Gratis Stm32 value line discovery kit + tävling
SvenW, Om jag förstått dig korrekt så kan du nu programmera flashminnet på kortet med OpenOCD via USB .. ? (dvs inget serieportshack)
Re: Gratis Stm32 value line discovery kit + tävling
Nej, nej,
Jag använder en hembyggd parallellportsdongle för JTAG!
Modifierad version av wiggler2. Mycket enkel. Se OpenOCD.
Att köra via USB skulle antagligen kräva kännedom om det program som körs på kortets andra processor. Vet inte ens om denna mjukvara är öppen, fri och tillgänglig ??
Att köra via SWD-kontakten (SWJ debug port) kan jag inte heller, men har för mig att jag läst att någon eller några inom OpenOCD-projektet jobbar på detta.
Jag använder en hembyggd parallellportsdongle för JTAG!
Modifierad version av wiggler2. Mycket enkel. Se OpenOCD.
Att köra via USB skulle antagligen kräva kännedom om det program som körs på kortets andra processor. Vet inte ens om denna mjukvara är öppen, fri och tillgänglig ??
Att köra via SWD-kontakten (SWJ debug port) kan jag inte heller, men har för mig att jag läst att någon eller några inom OpenOCD-projektet jobbar på detta.
Re: Gratis Stm32 value line discovery kit + tävling
På en sida om ett PVR-drivrutin så nämns att man använt programmet USBsnoop för MS-Win98, 98SE, 2000, XP.
Så stort sett installerar man drivrutinen. För över en färdig hexfil till flashminnet. Och analyserar c:\winnt\usbsnoop.log. Därefter har men ev möjlighet att skriva en egen drivrutin som gör samma sak.
Så stort sett installerar man drivrutinen. För över en färdig hexfil till flashminnet. Och analyserar c:\winnt\usbsnoop.log. Därefter har men ev möjlighet att skriva en egen drivrutin som gör samma sak.
Re: Gratis Stm32 value line discovery kit + tävling
Nu har jag fått igång min serieport på USART1 med hjälp av en max3232 som omvandlar 5v signaler till 3v till kortet och vise versa.
Nu kan jag skicka bokstäver till min dator från min STM32.
Jag använder STs egen drivrutin, men det skulle säkert gå att skruva ihop något eget, men den verkar ganska lätt att använda.
Nu ska jag försöka få till så att jag kan skicka ut en meny i textformat till min dator och sen mata tillbaka kommandon i terminalfönstret så att jag kan styra några lampor kopplade till kortet.
Det var väldigt mycket initierande och inställning av klockor, och jag hittade inget exempel från ST utan fick leta fram forumposter från andra ställen för tips.
kika här:
http://gostm32.blogspot.com/search?upda ... -results=7
Det fanns en till länk jag tappade bort där det stod hur initieringskoden ska se ut, ska se om jag hittar den sen
Nu kan jag skicka bokstäver till min dator från min STM32.
Jag använder STs egen drivrutin, men det skulle säkert gå att skruva ihop något eget, men den verkar ganska lätt att använda.
Nu ska jag försöka få till så att jag kan skicka ut en meny i textformat till min dator och sen mata tillbaka kommandon i terminalfönstret så att jag kan styra några lampor kopplade till kortet.
Det var väldigt mycket initierande och inställning av klockor, och jag hittade inget exempel från ST utan fick leta fram forumposter från andra ställen för tips.
kika här:
http://gostm32.blogspot.com/search?upda ... -results=7
Det fanns en till länk jag tappade bort där det stod hur initieringskoden ska se ut, ska se om jag hittar den sen
Re: Gratis Stm32 value line discovery kit + tävling
Har me fått igång usarten så att jag kan skicka och ta emot data men har inte fått igång så att jag får en interupt när jag tar emot data... är väll nån RCC klocka man glömt att aktiverat eller nått.
Enligt databladet så värkar det ju bara vara att sätta RXNEIE biten i USART_CR1 registret...
Enligt databladet så värkar det ju bara vara att sätta RXNEIE biten i USART_CR1 registret...
Re: Gratis Stm32 value line discovery kit + tävling
Det är kanske, typ,som fattas?
Kod: Markera allt
// Enable USART1 global interrupts
NVIC_EnableIRQ(USART1_IRQn);