Seban: co powiesz nt. odporności na zakłócenia ST7 (72F264) ? Używam ten scalak jako sterownik klawiatury w falownikach (takie maleństwa o mocach od 1 do 250kW) właśnie ze względu na hipotetyczną odporność na zakłócenia co nie jest dobrą stroną atmela. Być może masz własne spostrzeżenia ?
Czesc!
Powiem tak, seria ST6 ma wprost legendarna odpornosc na wszelkiego rodzaju zaklocenia ;-) Seria ST7 ktora stosuje w urzadzeniach klasy "Automotive" jest moim zdaniem rownie odporna ;-) I moim zdaniem zastosowanie serii S7 w tak "zasyfialym" srodowisku jakim jest praca w otoczeniu falownika to bardzo trafny wybor! ;-)
A tak z ciekawosci zapytam, co steruje praca falownika (znaczy jaki MCU)? Nie zajmiuje sie co prawda sterowaniem falownikami ale zdarzylo mi sie grzebac w UPS'ach firmy PowerWare serii 9, ktore to maja pelne przetwarzanie, tzn. w wielkim uproszczeniu prostuja sobie napiecie sieci, a potem falownik od nowa wytwarza czysta sinusoide na wyjsciu ;-) W starszczej generacji tychze UPSow widzialem jakas duza Motorole 68HCxx, natomiast w nowych siedza juz mikrokontrolery Hitachi serii H8 (obecnie chyba Renesas).
W moich projektach "samochodowych" gdzie az roi sie od roznego rodzaju zaklocen (maksymalnie zasyfiale zasilanie, silne pola elektromagmetyczne, sterowanie obwodami zawierajace duze indukcyjnosci i wszytkie inne mozliwe obciazenia), powiem ze seria ST7 sprawuje sie rewelacyjnie ;-) chociaz na PIC'ki od Microchipa tez nie moge narzekac ;-)
Podsumowujac, tak naprawde to kazdy MCU moze sie okazac zawodny jezeli niewlasciwie zaprojektujemy urzadzenie, odpowiednio zaprojektowane PCB, dobre zabezpieczenie lini wchodzacych i wychodzacych z MCU to daje nam juz 90% sukcesu. Ale w rzeczywistosci nie jest tak latwo ;( jezeli mam minimalizowac koszty urzadzenia i nie moge wlozyc parudziesieciu elementow aby bardziej uodpornic dany projekt na wszelkiego rodzaju zaklocenia, to musze powiedziec ze przy minimalnej ilosci elementow zewnetrzych wlasnie seria ST7 i PIC'e radza sobie najlepiej ;-)
uffff.... tyle apropos moich wnioskow na temat odpornosci MCU na zaklocenia ;-) teraz pare slow o architekturze 8051.
Tez myslalem ze architektura 8051 to przezytek i tylko stare dziadki sie tym zajmuja, postanowilem ta czesc segmentu olac i nie zajmowac sie rozwiazaniami historycznymi ;-)
Niestety teraz sie to na mnie msci, to czego unikalem jest prawie wszedzie !!! Lata obecnosci tej architektury na rynku sprawily ze cale stada ludzi zna wylacznie ta architekture i projektanci/programisci dalej wybieraja architekture 8051. Prosty przyklad... zagladamy np. do urzadzen firm Posnet lub Optimus-IC (mowimy o kasach i drukarkach fiskalnych). Otoz co tam widzimy.... o zgrozo seria 8051. Dwoch niezaleznych producentow stosuje ta sama architekture... niestety :(
Ja rozumiem ze mozna projektowac nowe urzadzenia na nowych MCU i nie wykorzystywac takich archaicznych rozwiazac jakim jest seria 8051, ale tu mozemy zauwazyc jeszcze jedno zjawisko. Wszystkie wieksze firmy uparcie ciagna ta architekture rozwijajac ja niesamowicie. Przykladem takiego dziwnego dla mnie posuniecia sa MCU kompatybilne z 8051 o wydajnosci 100MIPS, o np tu:
http://www.silabs.com/products/microcontroller/
Nie jestem bron boze zwolennikiem architektury 8051, ale sam juz nie wiem co o tym myslec ;( wszyscy narzekaja ze to starocie, ze sa inne rozwiazania ale wszyscy je nadal wykorzystuja. Mysle ze jest to podyktowane bardzo duza iloscia ludzi ktorzy "wyrosli" niejako na tej architekturze i wlasnie ten fakt wykorzystuja firmy sprzedajace MCU zgodne z ta architektura ;)
Co do assemblerow hmmm.... powiem tak ja nie mam innego wyjscia ;( kompilartor C moge wykorzystac jak mam do dyzpozycji chociaz ze 4KB pamieci w MCU, jednak obecne projekty ktore wykonuje maja byc tanie, bardzo tanie.... wiec MCU ktore moge wykorzytac maja od 1 lub 2 KB pamieci, no w ekstremalnych wypadkach dostaje MCU ktore ma 4KB na kod programu, i nie wiem co bym nie robil to kompilator C mi nie pomoze, bo nie dam rady przy jego pomocy upchnac calego kodu w pamieci MCU ;(
jednak gdy mam do dyspozycji wieksza ilosc pamieci to nie mysle nawet o assemblerze tylko pisze wlasnie w C, jednak pewne fragmenty zawsze bedzie sie oplacalo napisac w ASM. Zreszta kompilator, kompilatorowi nie rowny ;) kazdy dziala inaczej i ma inne wymagania ;)
Tu jednak natrafiamy na druga strone medalu, sa procesory dla ktorych moim skromnym zdaniem pisanie w ASM zeczywiscie mija sie z celem, bo kompilator na pewno wykona robote lepiej od nas. Mysle ze dobrym przykladem moze byc tu procesory oparte o rdzen ARM. Tu pisanie w ASM to czysta herezja ;)
Zawsze chcialem opanowac programowanie DSP (np. Texas Instruments) jednak nigdy nie mialem wystarczajacej ilosci czasu aby sie za to zabrac, no i odstraszala mnie cena zestawow startowych i programatorow ;(
ufffff.... ale truje ;) pora konczyc.
Reasumujac, teraz nadchodzi era programowalnych ukladow logicznych, za chwila kazdy bedzie mogl sobie wlozyc dowolnego MCU do wiekszej Altery, Xilix'a czy Cypress'a. Jezeli nawet nie bedzie w stanie sam "zrobic" sobie wlasnego MCU w VHDL'u to zawsze moze skozystac z gotowego "jadra" dowolnego CPU, sa nawet projekty ktore udostepniaja cale "klocki" za darmo: http://www.opencores.org/
Motorola 68HC05, czy 8051, AVR czy cokolwiek innego na 300MHz nie ma problemu ;-) bierzemy gotowy projekt z opencores i wpakowujemy go do naszej programowalnej struktury logicznej ;-)
Na razie koszty jeszcze wysokie, ale juz za chwile stanie sie to popularne, wiec i tanie ;-) no coz przyslosc pokaze ;-)
na tym koncze moj wywod ;-)
pozdrawiam serdecznie
Seban/SLIGHT