51单片机连接pl2303通过USB线发送编码数据给电脑,通过单片机的按键来控制电脑中ppt的操作,
如要使ppt全屏,按电脑键盘的F5就可以全屏,在网上查到电脑F5按键的编码是0x74。
程序如下,但是编译后发觉按键对ppt没反应。这是错在哪里了呢。那要怎么改才行呢。我是单片机新手,请高手们多多指教。谢谢
#include <reg51.h>
#include <string.h>
unsigned char ch;
bit read_flag= 0 ;
void init_serialcom( void )
{ SCON = 0x50 ; //SCON: serail mode 1, 8-bit UART, enable ucvr
//UART为模式1,8位数据,允许接收
TMOD |= 0x20 ; //TMOD: timer 1, mode 2, 8-bit reload
//定时器1为模式2,8位自动重装
PCON |= 0x80 ; //SMOD=1;
TH1 = 0xFD ; //Baud:19200 fosc="11".0592MHz
IE |= 0x90 ; //Enable Serial Interrupt
TR1 = 1 ; // timer 1 run
TI=1;
}
//向串口发送一个字符
void send_char_com( unsigned char ch)
{
SBUF=ch;
while (TI== 0);
TI= 0 ;
}
main()
{
init_serialcom(); //初始化串口
while ( 1 )
{
if (P0==0xfe) //如果按下单片机的按键,则P0=0xfe?
{
send_char_com(0x74); //按下单片机按键后,则向txd发送编码数据0x74,相当于电脑键盘的F5按键按下,ppt全屏。
}
}
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
否则的话我们要打开个TXT文件,你一直用串口发数据,还不打出文章来呵呵~~
-----------------------这个不是说串口,说的是PS/2口吧
我再试试。
一周热门 更多>