Elektroda.pl
Elektroda.pl
X
CControls
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

- - Mikrokontrolery ARM - zestaw startowy.

bipolunipol 29 Lip 2013 01:36 6678 33
  • #1 29 Lip 2013 01:36
    bipolunipol
    Poziom 19  

    Witam.
    Zamierzam nauczyć się programowania mikrokontrolerów ARM - z rdzeniem ARM Cortex - M3 w języku wysokiego poziomu C.
    Nie ma dużego wyboru jeżeli chodzi o książki, zdecydowałem się na: "STM32. Aplikacje i ćwiczenia w języku C" M. Galewskiego (http://www.kamami.pl/index.php?ukey=product&productID=187337).
    Zastanawiam się nad tym, jaki zestaw startowy byłby najlepszy?
    Są 4 możliwości:
    1. ZL27ARM (http://www.kamami.pl/index.php?productID=134653); cena: 270zł.
    Parametry:

    Code:
    Podstawowe właściwości zestawu:
    

        mikrokontroler STM32F107VBT6 w obudowie LQFP100 (m.in. 128 kB pamięci Flash, 48 kB pamięci SRAM, 2xSPI, 1xI2C, 5xUART, USB-OTG, 2xCAN, MAC Ethernet, ADC, 2xDAC)
        5-pozycyjny joystick
        2 diody LED
        20-stykowe złącze JTAG umożliwiające programowanie pamięci oraz debugowanie programu
        złącze host USB
        wbudowany klucz prądowy do zasilania device USB
        24 linie GPIO
        złącze dla modułu PHY (ZL2ETH)
        złącze z wyprowadzoną magistralą I2C
        złącze z wyprowadzoną magistralą SPI
        możliwość instalacji kwarcu 32,768 kHz
        zworki służące do wyboru typu pamięci, z której zostanie uruchomiony mikrokontroler
        zworka ułatwiająca pomiar natężenia prądu pobieranego przez mikrokontroler
        zasilanie ze złącza USB


    2. Zestaw STM32 RedDragon LCD3.2" Cortex-M3 ARM (http://allegro.pl/modul-stm32-reddragon-lcd3-2-cortex-m3-arm-i3408278100.html). Cena: 340zł.
    Parametry:
    Code:
     
    
        STM32F103ZET6: the high performance STM32 MCU which features
            Core: ARM® Cortex™-M3 32-bit RISC
            Operating Frequency: 72MHz, 1.25 DMIPS/MHz
            Operating Voltage: 2-3.6V
            Package: LQFP144
            I/Os: 112
            Memories: 512kB Flash, 64kB RAM
            Communication Interfaces: 2 x SPI, 5 x USART, 2 x I2S, 2 x I2C, 1 x SDIO, 1 x USB, 1 x CAN
            AD & DA converters: 3 x AD (12-bit, 1μs, shares 16 channels); 2 x DA (12-bit)
            Debugging/Programming: supports JTAG/SWD (serial wire debug) interfaces, supports IAP
        Zamontowane dodatkowe pamięci w module:
            512 MB SRAM
            128 MBytes NAND FLASH
            2 MBytes NOR Flash
            16 MBit Flash with SPI interface




            2 KBit EEPROM with I2C interface
            MicroSD card slot, SD bus (the SD card is not included), supports FATFS
        LCD 3.2" TFT ekran dotykowy, rozdzielczość 320*240, liczba kolorów 256tyś, sterowanie równoległe 8-bit lub 16bit. Controller ekranu dotykowego ADS7843 SPI, lub jego odpowiednik
        Układ Audio, dekoder WM8978, wspiera np radio internetowe, dekoduje MP3
        Audio output: 3.5mm jack
        Audio input: 3.5mm jack
        Głośniczek
        USB device port, supported by STM32F103ZET6
        Ethernet module, features a ethernet controller: DM9000A
            Integrated 10/100M transceiver with HP Auto-MDIX
            IEEE802.3x flow control for full-duplex mode
            Integrated 16 KBytes SRAM
            Supports IP/TCP/UDP checksum generation and checking
            Supports automatically load vendor ID and product ID from EEPROM
        Other communication features: CAN, RS485, RS232
            Złącze interfejsu CAN, chip drive SN65VHD230
            Złącze interfejsu RS485
            Złącze interfejsu USART wyprowadzone na złącze RS232 DB9
            Złącze interfejsu USART wyprowadzone na złącze USB przez konwerter PL2303
        Złącze do podłączenia kamerki OV7670 kamera dostępna osobno
        Złącze do podłączenia modułu komunikacji radiowej RFN24L01 moduł dostępny osobno
        Host USB: zbudowany na układzie CH376T
        Odbiornik podczerwieni HS0038
        Czujnik temperatury DS18B20 - opcja sprzedawany osobno
        Złącze PS/2, możliwość podłączenia podłączenia myszki, klawiatury itp.
        Gniazdo na karty microSD
        joystick(5 directions)
        5 przycisków: reset, tamper, wakeup, 2 x do własnego wykorzystania
        Debugging interface: 20-pin JTAG port, compatible with ST-Link, JLink, NLink2, etc
     

    3.HY-GoldBull V3 + LCD 3,2" STM32F107 (http://allegro.pl/hy-goldbull-v3-lcd-3-2-stm32f107-f-vat-i3421182871.html). Cena 300zł.

    Code:
        MCU: STM32F107VCT6 from STMicroelectronics, incorporates the high-performance ARM® Cortex™-M3 32-bit RISC core operating at a 72 MHz frequency, high-speed embedded memories(256KB FLASH, 64KB RAM) in LQFP100 package. The STM32F107VCT6 offers two 12-bit ADCs, four general-purpose 16-bit timers plus a PWM timer, as well as standard and advanced communication interfaces: up to two I2Cs, three SPIs, two I2Ss, five USARTs, an USB OTG FS and two CANs. Ethernet is also available on the STM32F107VCT6.
    
        3.2'' TFT LCD touch screen, 320*240 resolution, resistive touch function, stand-alone touch controller: TSC2046 (wyświetlacz LCD TFT 3,2" 320x240 z panelem dotykowym,panel dotykowy rezystancyjny, kontroler:   TSC2046)
        Memories:
            16 MBit Flash with SPI interface
            2 KBit EEPROM with I2C interface
            MicroSD card slot, SPI bus (the SD card is not included), supports FATFS
        USB OTG, supports USB On The Go technology
            Onboard Mini-B USB receptacle
            USB cables are provided for Host/Slave mode respectively:
                Host Mode: USB type A receptacle to mini-B cable
                Slave Mode: USB type A plug to mini-B cable
            Supports external memory card
        Ethernet module, features a ethernet controller: DP83848, RMII interface, Auto-MDIX for 10/100 Mb/s
        Other communication features: CAN, RS232
        Boot mode selection switches
        Human-Machine Interfaces: one joystick(5 directions), four buttons (Wakeup, User, Tamper, Reset)
        Debugging interface: 20-pin JTAG port, compatible with ST-Link, JLink, NLink2, etc 

    4. STM32 FireBull LCD 3.2" STM32F103VET (http://allegro.pl/modul-stm32-firebull-lcd-3-2-stm32f103vet-i3432151110.html). Cena 289 zł.
    Code:
     
    
        MCU: STM32F103VET6 from STMicroelectronics, incorporates the high-performance ARM® Cortex™-M3 32-bit RISC core operating at a 72 MHz frequency in LQFP100 package. The STM32F103VET6 offers high-speed embedded memories(512KB FLASH, 64KB RAM), 12-bit ADC, DAC, PWM, I2C, SPI, I2S, SDIO, USART, USB, CAN, and FSMC.
        3.2'' TFT LCD touch screen, 320*240 resolution, 262k color, 8/16 bit bus, IO controlling, Stand-Alone touch controller chip, supports 1 SD card(SPI) and 1 DATA FLASH for storage application, such as images, files, data, etc.
        128M NAND FLASH, IO controlling, customized updating is available(supports up to 1G, 2G, 4G, etc.).
        Onboard high performance MP3/WMA/MIDI audio decoder and ADPCM encoder: VS1003. It is a single-chip MP3/WMA/MIDI audio decoder and ADPCM encoder. It contains a highperformance, proprietary low-power DSP processor core VS DSP4, working data memory, 5 KiB instruction RAM and 0.5 KiB data RAM for user applications, serial control and input data interfaces, 4 general purpose I/O pins, an UART, as well as a high-quality variable-sample-rate mono ADC and stereo DAC, followed by an earphone amplifier and a common buffer.
        One USB host port, features a file manage and control chip: CH376, used to MCU system read/write file in USB Flash Drive or SD card. CH376 supports USB-Device Mode and USB-HOST Mode. Set the basic firmware of USB communication protocol in the inner. It is also set firmware of special communication protocol to deal with Mass-Storage devices, communication interface firmware of SD card, FAT16, FAT32 and FAT12 file system manage firmware in the inner. It supports common USB storage devices (contains USB Flash Drive/USB hard disk/USB Flash memory/USB reader) and SD cards (contain SD card with standard capacity and HC-SD card with high capacity, MMC card and TF card compatible with protocol).
            Supports 1.5Mbps low-speed and 12Mbps full-speed, compatible with USB V2.0, only needs crystal and capacitance external.
            USB-HOST Mode and USB-DEVICE Mode, automatically switch Host Mode and Device Mode.
            Supports USB device control transfer, bulk transfer and interrupt transfer.
            Detects USB device plug and unplug automatically and sends message to USB host.
            Set file system manage firmware of FAT16, FAT32 and FAT12, support the capacity up to 32GB USB Flash Drive and SD Card.
            Supply file manage function: open, create or delete file, enumerate and search file, create the sub-catalog, and support the long file name.
            Supply 8-bit passive parallel interface with 2MB speed, support parallel data bus connect to MCU.
            Supply SPI device interface with 2MB/24MHz speed, support SPI serial bus connect to MCU.
        One Ethernet port, features a Microchip Stand-Alone Ethernet Controller with SPI Interface: ENC28J60. Onboard RJ45 connector with transformer and indicator LED.
            IEEE 802.3™ Compatible Ethernet Controller
            Fully Compatible with 10/100/1000Base-T Networks
            Integrated MAC and 10Base-T PHY
            Supports One 10Base-T Port with Automatic Polarity Detection and Correction
            Supports Full and Half-Duplex modes
        One USB device port(supported by STM32F103VET6)
        Communication Interfaces: one CAN, one RS485, two RS232
        SD card slot that uses SPI interface
        Memories: one EEPROM with I2C interface & one Data Flash with SPI interface
        AD & DA function: one potentiometer for ADC input adjustment, Screw-terminated connectors for two channels ADC input & one channel DAC output
        Human-Machine Interfaces: one buzzer, four user LEDs, one power indicator, one USB communication indicator, three user push-buttons, one joystick(five positions), one reset button
        Powered from 5V DC or USB interface, configured via onboard jumper
        Dimension: 15cm x 11cm
     


    Jaki zestaw jest godny polecenia? Może są zestawy inne, gdzie lepszy jest stosunek jakość/cena? Przy pomocy jakiego programatora JTAG można programować wymienione układy?

    0 29
  • CControls
  • Pomocny post
    #2 29 Lip 2013 01:43
    alagner
    Poziom 25  

    Z książką schrzaniłeś imho. Koledzy mają i odradzają.
    Sam przekartkowałem i stwierdzam że równie dobrze reference manual styknie.
    Z zestawem - zależy co chcesz zdziałać. Ja bym wziął STM32F4discovery + dodatkowe "klocki" od Embestu albo Waveshare, ale to zależy jeszcze co chcesz robić: w GoldBullu nie poużywasz DACa, brak też FSMC i SDIO ale jest hardware'owy ethernet, w HY-Mini jest FSMC i SDIO, a F4 ma wszystko ;)

    0
  • #3 29 Lip 2013 01:59
    bipolunipol
    Poziom 19  

    alagner napisał:
    Z książką schrzaniłeś imho. Koledzy mają i odradzają.

    Dlaczego?
    alagner napisał:
    Sam przekartkowałem i stwierdzam że równie dobrze reference manual styknie.

    Więc jaka książka byłaby lepsza?

    0
  • CControls
  • Pomocny post
    #4 29 Lip 2013 02:14
    alagner
    Poziom 25  

    Bo w stosunku do w/w manuala wiele nie wnosi. Generalnie z literaturą (a przynajmniej polskojęzyczną) do ARMa jest ten problem, że rzeczy wartych uwagi raczej brak.

    0
  • Pomocny post
    #5 29 Lip 2013 04:51
    tehaceole

    Poziom 28  

    Zainteresuj się też ofertą Propoxu. Książek do ARM jest kilka. IMHO najgodniejszą polecenia jest "Mikrokontrolery STM32 w sieci Ethernet w przykładach" M. Peczarskiego. Bardzo dystansuje pozostałe tytuły.

    0
  • Pomocny post
    #6 29 Lip 2013 09:05
    Badmaneq
    Poziom 23  

    Również proponuję "urządzonka" propox'u EVBmmTm + np. MMstm32F103Vx
    przy takim rozwiązaniu możesz szybko przerzucić się na LPC'ki, płyta bazowa pozostaje bez zmian, wymieniasz moduł.

    Jeżeli nie potrzebujesz wszystkich tych dodatków np. dekoder mp3, wyprowadzanie rs485, itp. to godny polecenia jest STM32 HY-mini LCD3.2"

    0
  • Pomocny post
    #7 29 Lip 2013 09:08
    alagner
    Poziom 25  

    HY-mini ma jeden problem: albo panel dotykowy, albo DAC. Piny są te same. Podejrzewam, że w większości przypadków nikomu to różnicy nie zrobi, ale ja akurat odbiłem się od tego ;)

    Pozdrawiam

    0
  • Pomocny post
    #8 29 Lip 2013 09:18
    BlueDraco
    Specjalista - Mikrokontrolery

    Popatrz na możliwości i cenę LPC1768 MIni-DK2 (uwaga - bez wbudowanego intergejsu debugowania - potrzebny jakiś moduł JTAG) albo LandTiger (z interfejsem)

    0
  • Pomocny post
    #9 29 Lip 2013 09:34
    piotrva
    Moderator na urlopie...

    Ja bym polecał STM32F4Discovery + moduły od Embest (płyta bazowa z ETH, RS232, SD; LCD + TouchPannel; Kamerka). Jedyny problem to to, że LCD i Kamerka wiszą na taśmach i nie ma jak tego zabardzo umocować w jedną całość...
    Zaletą samego discovery jest za to obecność debuggera - tego nie zastąpi zupełnie nic...
    A książki też powiem szczerze, że wszystkie po polsku w tej tematyce do kitu - zwykle skupiają się na jednym uC, nie maja odniesienia do manuali i datasheetów, a są w pewnych miejscach ich tłumaczeniem...

    0
  • Pomocny post
    #11 29 Lip 2013 10:31
    piotrva
    Moderator na urlopie...

    W tym zestawie nie masz programatora. Poza tym książka zapewne nie poruszy nawet podstawowych zagadnień, ale od razu będzie mówiła o USB.
    Ogólnie:
    Książki po polsku - odpuść sobie.
    Zestawy - Albo STM32F4Discovery + moduły (Discovery: 56zł, Base Board 116zł, LCD 163zł, Camera: 96zł) i mamy debugowanie i bardzo fajny zestaw.
    Albo budżetowo: HY-Mini STM32, ale programowanie tylko po bootloaderze bez nieocenionej możliwości debugowania.

    0
  • Pomocny post
    #12 29 Lip 2013 11:23
    Freddie Chopin
    Specjalista - Mikrokontrolery

    piotrva napisał:
    Albo budżetowo: HY-Mini STM32, ale programowanie tylko po bootloaderze bez nieocenionej możliwości debugowania.

    Albo można sobie debugger (JTAGa) kupić i mieć na przyszłość do wszystkiego...

    4\/3!!

    0
  • #14 29 Lip 2013 14:36
    bipolunipol
    Poziom 19  

    Freddie Chopin napisał:
    Albo można sobie debugger (JTAGa) kupić i mieć na przyszłość do wszystkiego...

    Może jest jakiś konkretny godny polecenia?

    0
  • Pomocny post
    #15 29 Lip 2013 15:51
    Freddie Chopin
    Specjalista - Mikrokontrolery

    bipolunipol napisał:
    Może jest jakiś konkretny godny polecenia?

    Wszystko zależy od tego jakiego środowiska (lub jakich środowisk) zamierzasz używać.

    4\/3!!

    0
  • #16 29 Lip 2013 22:04
    bipolunipol
    Poziom 19  

    Freddie Chopin napisał:

    Wszystko zależy od tego jakiego środowiska (lub jakich środowisk) zamierzasz używać.

    np. darmowe Eclipse + OpenOCD lub płatne Keil uVision4 .

    0
  • #17 02 Sie 2013 21:18
    bipolunipol
    Poziom 19  

    Chyba najbardziej uniwersalnym, obsługiwanym przez wiele środowisk programatorem będzie ZL30PRGv2.

    0
  • #18 05 Sie 2013 15:44
    bipolunipol
    Poziom 19  

    Badmaneq napisał:
    Jeżeli nie potrzebujesz wszystkich tych dodatków np. dekoder mp3, wyprowadzanie rs485, itp. to godny polecenia jest STM32 HY-mini LCD3.2"

    Zależy mi na tym, aby była możliwość podłączenia zewnetrznej pamięci RAM.

    0
  • #19 05 Sie 2013 17:37
    Badmaneq
    Poziom 23  

    Hmm. W jaki sposob chcesz podlaczyc ram ? To juz nie te czasy kiedy wkladalo sie kostke ramu w obudowie dip. Teraz to smd rzadzi ;)
    Moze znandziesz jakis modul, ktory pozwala na dolutowanie ramu.
    Zawsze mozesz dokupic np. ram w postaci takiego modulu IS62WV51216BLL

    Btw. Po co Ci dodatkowy ram ?

    0
  • #20 05 Sie 2013 19:04
    bipolunipol
    Poziom 19  

    Badmaneq napisał:

    Btw. Po co Ci dodatkowy ram ?


    aplikacja będzie korzystała z wielu zmiennych.

    0
  • #21 05 Sie 2013 20:16
    Badmaneq
    Poziom 23  

    Przykladowo w takim LPC 1114 jest 8 KB ram i w kilku projektach ktore robilem nie wykorzystalem w pelni tej pamieci.
    Wieksze zapotrzebowanie na ram maja programy pisane przy uzyciu systemow czasu rzeczywistego, moze jeszcze jezeli korzystasz wyswietlaczy lcd i przetwrzarz caly obraz w ramie...
    Uwazam, ze na razie nie zaprzataj sobie glowy dodatkowym ramem.

    0
  • #22 05 Sie 2013 21:02
    Freddie Chopin
    Specjalista - Mikrokontrolery

    Badmaneq napisał:
    Przykladowo w takim LPC 1114 jest 8 KB ram i w kilku projektach ktore robilem nie wykorzystalem w pelni tej pamieci.

    Przykładowo taki LPC1769 ma 64kB RAM i w jednym projekcie który robiłem wykorzystałem praktycznie całą tą pamięć...

    Badmaneq napisał:
    Wieksze zapotrzebowanie na ram maja programy pisane przy uzyciu systemow czasu rzeczywistego, moze jeszcze jezeli korzystasz wyswietlaczy lcd i przetwrzarz caly obraz w ramie...

    Większe programy mają większe zapotrzebowanie na pamięć. Nie zmieścisz w tych 8kB RTOSa, systemu plików na kartę SD i stosu TCP/IP. Nie wszystkie programy ograniczają się do wyświetlacza LCD.

    4\/3!!

    0
  • #23 05 Sie 2013 21:42
    BlueDraco
    Specjalista - Mikrokontrolery

    No ale STM32F4 na płytce DISCOVERY ma ponad 190 KiB RAM...

    0
  • #24 06 Sie 2013 05:35
    McMonster
    Poziom 32  

    A nie można po prostu zapytać autora, co ma na myśli pisząc o "wielu zmiennych"? ;) To ma być orientacyjny szacunek ich liczby w kodzie, czy jakieś konkretne oszacowanie zużycia pamięci na podstawie planowanego programu?

    0
  • #25 06 Sie 2013 14:25
    bipolunipol
    Poziom 19  

    Będą przetwarzane sygnały - operacje na wielu próbkach, które gdzieś muszą być przetrzymywane. Można użyć do tego kartę SD, jednak odczyt/zapis informacji do takieej karty jest dużo wolniejszy niż do statycznej RAM.

    0
  • #26 21 Sty 2014 19:40
    mgiro
    Poziom 22  

    Badmaneq książki po polsku darować sobie? To co polecasz poza dokumentacją od ST? Masz jakies angielskojęzyczne?[/quote]

    0
  • #27 21 Sty 2014 20:44
    Badmaneq
    Poziom 23  

    To raczej nie do mnie pytanie :)
    Ja pytalem czy warto w/w pozycje kupic. Ja zakupilem jednak nie polecam dla poczatkujacych rozpoczynajacymi przygode z ARM'mi. Ksiazka jak sama nazwa wskazuje traktuje o USB i jego implementacji w STM32.

    BTW. Od STM32 wole LPC'ki, a zwlaszcza te zawierajace Cortex M0, z przesiadka z AVR nie mialem wiekszego problemu.

    0
  • #28 21 Sty 2014 20:55
    BlueDraco
    Specjalista - Mikrokontrolery

    A ja właśnie po 3 latach "przesiadam się" z LPC11xx na STM32F0, głównie z powodu niewystarczającej liczby interfejsów UART i SPI w LPC11. Na 11U6x, który rozwiązuje ten problem to sobie jeszcze trochę poczekamy. Timery też w w STM32F0 ciut mądrzejsze, no i zapowiadane USB bez kwarcu w małych obudowach wygląda zachęcająco.

    0
  • #29 21 Sty 2014 21:25
    Badmaneq
    Poziom 23  

    Nie wiedzialem ze takie "cudo" sie szykuje.
    Jak na razie M0 w zupelnosci mi wystarcza. Co prawda mam modulik z M4 oparty na LPC4088 z zewnetrznym ramem i flashem, lecz brakuje czasu na zajecie sie nim - moze na ferjach...

    0