# PIC mikrokontrolleri >  PIC mikrokontrolieru programmesana python valoda

## zipo93

Vai ir kāda programma ar kuras palīdzību var programmēt mikrokontrolierus python programmēšanas valodā?

----------


## JDat

Hmm. Interesanta ideja. Neesmu par tādu domājis. Būs jāpaprasa googles tantei. Man liekas ir kāds softs iekš python ar ko varēja iešūt PICus.

----------


## ansius

teikšu godīgi pythons nav piemērots uC programmēšanai. CPython vēl varētu būt, taču tas ir tā pat kā cerēt C++ (nevis C) iekš uC. Valoda paredzēta citiem mērķiem. Teikšu godīgi patiesībā BASIC / PASCAL ir piemērotāks uC nekā daudzas augsta līmeņa valodas. reāli lai uC efektīvi ietu vajag rakstīt iekš ASM, tad arī saproti kā darbojas ALU, reģistri, stack, I/O u.c. lietas. kad tas ir saprast ērtuma pēc var arī lietot augstāka līmeņa valodas, bet tā pat ik pa solim nākas iestarpināt ASM jo tas strādā ātrāk. Tikai matemātika vairs tad nav pamatskolas līmenī jāpārzin.

----------


## JDat

jap. Var rakstīt ar C vai python, bet tieši asm iemāca kā strādā uC.

----------


## karloslv

> teikšu godīgi pythons nav piemērots uC programmēšanai. CPython vēl varētu būt, taču tas ir tā pat kā cerēt C++ (nevis C) iekš uC. Valoda paredzēta citiem mērķiem. Teikšu godīgi patiesībā BASIC / PASCAL ir piemērotāks uC nekā daudzas augsta līmeņa valodas. reāli lai uC efektīvi ietu vajag rakstīt iekš ASM, tad arī saproti kā darbojas ALU, reģistri, stack, I/O u.c. lietas. kad tas ir saprast ērtuma pēc var arī lietot augstāka līmeņa valodas, bet tā pat ik pa solim nākas iestarpināt ASM jo tas strādā ātrāk. Tikai matemātika vairs tad nav pamatskolas līmenī jāpārzin.


 Nesaki vis, pitonu kompilē uz baitkodu, un to savukārt var diezgan efektīvi izpildīt uz uC. Protams, tas viss nekritiskām vajadzībām un drīzāk prototipēšanai nekā produkcijai, bet tomēr to var izdarīt. Svarīgi ir izšķirt divas lietas:
a) kādā valodā uzdod programmu (valoda kā pieraksta veids) - un te nu tiešām augstāka līmeņa valodas visbiežāk ir ērtākas un pārskatāmākas
b) kādā veidā šī programma tiek izpildīta uz dzelža - kompilēts mašīnkods, interpretēts baitkods vai interpretēta valoda.

Pitons iekrīt vēl samērā pavelkamā kategorijā - kā programmas pieraksta valoda tā ir ļoti ērta, un tai ir baitkoda kompilācijas mehānisms. To pašu Beisiku taču arī kompilē uz mašīnkodu, lai to vispār varētu pavilkt uz uC, jo oriģināli tā ir interpretēta valoda.

----------


## ansius

es jau neteicu ka nevar, es tikai saku ka nav prātīgi. bet nu labi, gaume katram savādāka. es esmu par ASM, jo tas ir vienīgais veids kā tiešām efektīvu kodu rakstīt. a savādāk priekš ledu mirkšķināšanas vajag atmega jo uz mazāka kodam nepietiek vietas  ::

----------


## JDat

vietas pietiek, jaudas nepietiek. Kamēr nezinu c, varu pateikt ka ar c varētu ērti apstrādāt datus (garās sarunas ar PC pa rs232). Ātrie irq uc timing critical lietas tikai asm. Ar c varētu pārējo nesvarīgo. Piemēram sarunas ar LCD.

----------


## karloslv

> es jau neteicu ka nevar, es tikai saku ka nav prātīgi. bet nu labi, gaume katram savādāka. es esmu par ASM, jo tas ir vienīgais veids kā tiešām efektīvu kodu rakstīt. a savādāk priekš ledu mirkšķināšanas vajag atmega jo uz mazāka kodam nepietiek vietas


 Nez, man nav sliktas pieredzes ar C (gcc AVR versija). Kamēr saproti, kas tam kompilatoram vēderā, var rakstīt efektīvu kodu arī C (piemēram, neizmantot printf un citas standarta funkcijas). Paskatoties, kādu mašīnkodu ģenerē gcc, 90% gadījumu esmu pilnībā apmierināts. Un pārskatāmību nevar ne salīdzināt ar assembleru, it sevišķi, kad jāpieķeras kodam pēc pusgada, kā visbiežāk hobija līmenī arī sanāk.

----------

