*/ * readData - Přečtená data ze zásobníku z Rx (USART) * - Bud: X000ZZZZ - X 1/0; Y - 000; Z - číslo pinu na PORTB * - Nebo X1ZZZZZZ - Frekvence ovládání pohonu (KHz Zřejmě) * */ #include <18f252.h> #include void _main() { unsigned char read = usartRead(); if(read[6]==0) { setPin(read); //Pokud je 7bit 0 -> Budeme nastavovat pouze výstupní piny } elseif (read[6]==1) { setPwm(read); //Pokud je v log 1 -> Využijeme 6nejnižších bitů k nastavení rychlosti pwm (Přepíšeme defaultní hodnotu) } } unsigned char usartRead () { unsigned char read[]; int i=0; OpenUART(); while(i < 8) { read = ReadUART(); //read a byte i++; } return read; } void setPin (unsigned char kod) { //poskládáme za sebe nejnižší 4bity - pomocí nich vybereme pin na RB a nastavíme hodnotu podle kod[7] } void setPwm (unsigned char kod) { //Poskládáme za sebe nejnižších 6bitů - pomocí nich nastavíme frekvenci na PWM }