سلام
من یه tsop 1238 رو روی برد بورد راه انداختم تا کدهای دریافتی رو روی LCD نشون بده. پایه RXD رو هم با یه مقاومت 10 کیلو پول پ کردم.
وقتی که مقادیری رو دریافت میکنم، واسه بعضی از دکمه های کنترل یه عدد نشون میده مثلا واسه 4تا از دکمه های کنترل عدد 247 رو نشون میده! بعضی ها هم 255. این یعنی چی؟؟؟ آیا اشکالی در کاره؟؟؟
بعضی وقت ها هم عددهای مختلفی واسه بعضی دکمه ها نشون میده!!!!
رنج عددی که tsop دریافت میکنه چقدره؟؟
در زیر هم سورس برنامه رو آوردم. برنامه به زبان WinAVR هست.
با تشکر... :smile:
من یه tsop 1238 رو روی برد بورد راه انداختم تا کدهای دریافتی رو روی LCD نشون بده. پایه RXD رو هم با یه مقاومت 10 کیلو پول پ کردم.
وقتی که مقادیری رو دریافت میکنم، واسه بعضی از دکمه های کنترل یه عدد نشون میده مثلا واسه 4تا از دکمه های کنترل عدد 247 رو نشون میده! بعضی ها هم 255. این یعنی چی؟؟؟ آیا اشکالی در کاره؟؟؟
بعضی وقت ها هم عددهای مختلفی واسه بعضی دکمه ها نشون میده!!!!
رنج عددی که tsop دریافت میکنه چقدره؟؟
در زیر هم سورس برنامه رو آوردم. برنامه به زبان WinAVR هست.
با تشکر... :smile:
کد:
char data; // data on UART x char tmpData; x unsigned char temp; //temprature x char strTemp[5]; x void Init(); x /*****************************************************************************************************/ void Init() x { //- UART Init ------------ uartInit(); x uartSetBaudRate(2400); x rprintfInit(uartSendByte); x //----------------------- //- LCD Init ------------ LCDinit(); x LCDcursorOn(); x //----------------------- DDRD |= (1 << DDD5) | (1 << DDD6); x } /*****************************************************************************************************/ int main(void) x { LedPowerON(); x Init(); x //----------------------------------------------- LCDclr(); x LCDprintData("> TSOP 1238 <","%s"); x //----------------------------------------------- while(1) x { if (!uartReceiveBufferIsEmpty()) x { LedInitON(); x uartReceiveByte(&data); x _delay_ms(100); x if (tmpData != data) x { tmpData = data; x sprintf(strTemp, "%d", data); x LCDclr(); x LCDprintData("Data: ","%s"); x LCDprintData(strTemp,"%s"); x } LedInitOFF(); x } // End if } // While(1) return 0; x }
دیدگاه