java或者c都连接不上rs232 9针串口
供参考void MCU_Initialize(void){ SCON =0xDC; \\\/\\\/在11.0592MHz下,设置串行口波特率为9600,方式3,并允许接收 9为 SCON = 0x50; TCON = 0x00; TMOD |=0x21; \\\/\\\/定时器工作于方式2,自动装载方式 T0 16位定时器 TH1=0xFD; IP = 0X90; ES=1; ET0=1; \\\/\\\/TR1=1; EA=1;}\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/发送一个字节\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/*void putchar(unsigned char byte){ if(JO_check(byte)==1) TB8=0; else TB8=1; SBUF=byte; while(!TI) TI=0;} *\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/串口接受程序 与350通信\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/\\\/void RX() interrupt 4{ if(RI==1) { RI=0; C8051F350[CaiYangJiShu]=SBUF; if(RB8==JO_check(C8051F350[CaiYangJiShu])) { Ji_Ou_fail=0; \\\/\\\/奇偶效验失败 通知F350从新发送 } CaiYangJiShu++; if(CaiYangJiShu==8) { TR1=0; CS_350=1; CaiYangJiShu=0; \\\/\\\/ CAIYANG_over=0; \\\/\\\/完成一次采样标志 if(C8051F350[0]==0x55 && C8051F350[1]==0x55 && C8051F350[6]==0xAA && C8051F350[7]==0xAA&&Ji_Ou_fail==1) { CAIYANG_over=0; CaiYnagDat=0; CaiYnagDat<<=8; CaiYnagDat += C8051F350[5]; CaiYnagDat<<=8; CaiYnagDat += C8051F350[4]; CaiYnagDat<<=8; CaiYnagDat += C8051F350[3]; CaiYnagDat<<=8; CaiYnagDat += C8051F350[2]; } } }}这个程序是带奇偶校验的,可以在设置的时候去掉
使用串口调试助手(RS232),为什么电脑上只有一个串口
(COM1)
其实,很多 电脑 并没有COM串口就算有,也只有 一个串口是用来通信的,通信 就需要2 端,这样 才能形成一个当然,如果 调试串口程序,可以用 的 如 vspd
谁能给我一个用C语言编写的串口通讯程序,不好意思我对这方面零基础,想找个简单程序学学
#include
newtio.c_lflag = 0;newtio.c_cc[VTIME] = 0;newtio.c_cc[VMIN] = 1;fd=OpenDev(COM1);\\\/\\\/输入你的串口名称if (fd < 0)exit(0);printf(Open serial OK\\\ );tcflush(fd,TCIOFLUSH);tcsetattr(fd, TCSANOW, &newtio);while (1) \\\/\\\/循环读取数据{ write(fd, 1234567890,10);if((rlen = read(fd, rbuf, 4096))>0){ printf(\\\ Len %d\\\ ,rlen); rbuf[rlen] = '\\\\0'; printf( %s\\\ , rbuf); }sleep(1);}close(fd); exit (0);} 别忘了给分啊。
。
我想用C语言实现一个串口发送的功能
可以。
首先你可以用程序判断你待发送的字符的校验和y设你在校验位要发送的位为x设校验方式为z 因为 x=y xor z 所以 z=x xor y 即根据校验和y 与 你的要求x 决定用奇校验还是偶校验。
要是没有猜错,你可能是想用校验位来多一个发送位,达到特殊控制功能。
不要忘记,上述方法只能在一个字符发送完成后才能改变校验方式。