|
السلام عليكم
بارك الله فيك على الاستجابه
كنت هذه الايام احاول عمل كود ايضا ولكن تقابلني صعوبات اني مازلت مبتدا وانا استخدم جهاز nokia 3310
باستخدام f bus طبعا
فبارك الله فيك ان كنت ستعرض كود التنفيذ وياحبذا لو كان بالميكروسي
|
اخوانى هذا الكود قد امدنى به احد الاصدقاء
قال لى انه اخذه من النت
ولم يذكر لى المصدر يومها وانا لم اساله
وهو بميكروسى
كود:
/*Routine for starting the fbus Protocol*/
void startfbus()
{
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );UART1_Write(0x55 );
}
/*Refresh the 3310 fbus link*/
void refresh()
{
UART1_Write(0x1E );UART1_Write(0x00 );UART1_Write(0x0C );UART1_Write(0xD1 );
UART1_Write(0x00 );UART1_Write(0x07 );UART1_Write(0x00 );UART1_Write(0x01 );
UART1_Write(0x00 );UART1_Write(0x03 );UART1_Write(0x00 );UART1_Write(0x01 );
UART1_Write(0x40 );UART1_Write(0x00 );UART1_Write(0x52 );UART1_Write(0xD5 );
}
/*Message1 here*/
void mess()
{
UART1_Write(0x1E );UART1_Write(0x00 );UART1_Write(0x0C );UART1_Write(0x02 );
UART1_Write(0x00 );UART1_Write(0x35 );UART1_Write(0x00 );UART1_Write(0x01 );
UART1_Write(0x00 );UART1_Write(0x01 );UART1_Write(0x02 );UART1_Write(0x00 );
UART1_Write(0x07 );UART1_Write(0x91 );UART1_Write(0x36 );UART1_Write(0x19 );
UART1_Write(0x08 );UART1_Write(0x00 );UART1_Write(0x10 );UART1_Write(0x10 );
UART1_Write(0x00 );UART1_Write(0x00 );UART1_Write(0x00 );UART1_Write(0x00 );
UART1_Write(0x15 );UART1_Write(0x00 );UART1_Write(0x00 );UART1_Write(0x00 );
UART1_Write(0x0A );UART1_Write(0x0C );UART1_Write(0x91 );UART1_Write(0x36 );
UART1_Write(0x39 );UART1_Write(0x19 );UART1_Write(0x13 );UART1_Write(0x21 );
UART1_Write(0x70 );UART1_Write(0x00 );UART1_Write(0x00 );UART1_Write(0x00 );
UART1_Write(0x00 );UART1_Write(0xA7 );UART1_Write(0x00 );UART1_Write(0x00 );
UART1_Write(0x00 );UART1_Write(0x00 );UART1_Write(0x00 );UART1_Write(0x00 );
UART1_Write(0x65 );UART1_Write(0x39 );UART1_Write(0x3D );UART1_Write(0x2F );
UART1_Write(0xA7 );UART1_Write(0xE7 );UART1_Write(0xCB );UART1_Write(0xF2 );
UART1_Write(0x3C );UART1_Write(0x01 );UART1_Write(0x47 );UART1_Write(0x00 );
UART1_Write(0xA2 );UART1_Write(0x08 );
}
/*Message2 here*/
void burglar_alert()
{
UART1_Write(0x1E );UART1_Write(0x00 );UART1_Write(0x0C );UART1_Write(0x02 );
UART1_Write(0x00 );UART1_Write(0x56 );UART1_Write(0x00 );UART1_Write(0x01 );
UART1_Write(0x00 );UART1_Write(0x01 );UART1_Write(0x02 );UART1_Write(0x00 );
UART1_Write(0x07 );UART1_Write(0x91 );UART1_Write(0x36 );UART1_Write(0x19 );
UART1_Write(0x08 );UART1_Write(0x00 );UART1_Write(0x10 );UART1_Write(0x10 );
UART1_Write(0x00 );UART1_Write(0x00 );UART1_Write(0x00 );UART1_Write(0x00 );
UART1_Write(0x15 );UART1_Write(0x00 );UART1_Write(0x00 );UART1_Write(0xF0 );
UART1_Write(0x2F );UART1_Write(0x0C );UART1_Write(0x91 );UART1_Write(0x36 );
UART1_Write(0x39 );UART1_Write(0x19 );UART1_Write(0x13 );UART1_Write(0x21 );
UART1_Write(0x70 );UART1_Write(0x00 );UART1_Write(0x00 );UART1_Write(0x00 );
UART1_Write(0x00 );UART1_Write(0xA7 );UART1_Write(0x00 );UART1_Write(0x00 );
UART1_Write(0x00 );UART1_Write(0x00 );UART1_Write(0x00 );UART1_Write(0x00 );
UART1_Write(0xC2 );UART1_Write(0xBA );UART1_Write(0xFC );UART1_Write(0xCC );
UART1_Write(0x0E );UART1_Write(0xCB );UART1_Write(0x41 );UART1_Write(0x41 );
UART1_Write(0x76 );UART1_Write(0x59 );UART1_Write(0x4E );UART1_Write(0x0F );
UART1_Write(0x81 );UART1_Write(0x84 );UART1_Write(0xEF );UART1_Write(0xF9 );
UART1_Write(0x9C );UART1_Write(0x05 );UART1_Write(0xCA );UART1_Write(0xBE );
UART1_Write(0xEB );UART1_Write(0x72 );UART1_Write(0xD0 );UART1_Write(0x38 );
UART1_Write(0x2C );UART1_Write(0x07 );UART1_Write(0xA1 );UART1_Write(0xC3 );
UART1_Write(0x73 );UART1_Write(0x90 );UART1_Write(0xB8 );UART1_Write(0x5C );
UART1_Write(0x76 );UART1_Write(0x83 );UART1_Write(0xE6 );UART1_Write(0xF4 );
UART1_Write(0x37 );UART1_Write(0xBB );UART1_Write(0xEC );UART1_Write(0x0E );
UART1_Write(0x81 );UART1_Write(0x00 );UART1_Write(0x01 );UART1_Write(0x45 );
UART1_Write(0x0F );UART1_Write(0x30 );
}
void main()
{
// Analogs are off
ADCON1=0x0F;
CMCON=0x07;
// TX output, RX input
TRISC.F7=1;
TRISC.F6=0;
// Initialize Uart at 115200 baud rate
UART1_Init(115200);
// Wait for Uart to stablize
delay_ms(100);
do
{
// Start protocol
startfbus();
// Wait for uart to stablize
delay_ms(100);
// Message 1 sending
// Refresh link
refresh();
// Send message 1
mess();
// Stabilize
delay_ms(100);
//Message 2 sending
// Refresh Link
refresh();
//Send message 2
burglar_alert();
// Stabilize
delay_ms(100);
} while(0);//Execute Once
}