❶ 单片机行列式键盘程序问题
从代码可知,p2高4位被设置为输出,低4位被设置为输入;
所以,要读入数据时得先向低4位写入数据 1,也就是
P2=key_scen[] 中的 xxxx 1111;
如果有键入(其实就是把对应引脚电平拉低为 0),那么P2的低4位会有变化,即不再是 1111 了,其中的位会有0值出现;
在有键入的同时,此刻读取P2的值就与给P2的输出值是有不同的;
P2&0xf,就是先读取P2值,然后去掉高4位,保留低4位,注意了,此处的运算结果并不是保存回 P2,而是暂时存在内部隐含寄存器中;
❷ 单片机如何进行数据采集
对于液压设备中的8个待测参数选用相应的传感器来来检测,试验时选取应变式传感器作为测试现场的工具。这些选用的检测元件输出都是标准的4-20mA微弱的电流信号,电流信号又经过由LM324组成的放大转换电路转换成0-5V的电压信号输入到C8051F020的模拟输入端,如图2所示,经内部集成的A/D转换器转换成相应的数字量。C8051F020将8路采样值作为液压设备现场的状况存入相应的内存单元。
3.2 LCD显示
为了使数据采集系统小巧美观,同时又获得较高的性价比,选用德彼克公司生产的DMF-50174蓝屏液晶显示器,该显示器是320×240点阵式液晶,图形和文本都可以显示。显示驱动控制芯片采用EPSON 公司的一种高性能LCD 控制器SED1335。硬件电路采用间接接法,如图3所示。用单片机的P5.0~P5.7口作为SED1335的DB0~DB7数据总线的输入通道。P4.5作为SED1335的片选信号, 配合地址信号A0实现SED1335 通过数据总线接收来自单片机的指令和数据。当A 0= 0, P4.6(WR)=0,P4.7(RD)= 1时, 实现指令的写入和从SED1335 中读取数据。当A 0= 1, P4.6(WR)= 0, P4.7(RD)=1时, 则是显示数据的写入,该功能通过软件实现。
3.3 数据通讯
单片机C8051F020的TX0、RX0及P0.2通过MAX485与上位机相连,进行串行通信,如图3所示。P0.2控制MAX485的状态或发送,用软件控制。RX0为单片机的串行输入端,接收上位机通过MAX485向单片机发送的数据。TX0为单片机的串行输出端,通过MAX485发送给上位机。
4 系统软件设计
4.1 软件设计总体上由两部分组成:一部分为单片机C8051F020
主程序设计,一部分为LCD液晶显示程序设计。由于用C语言编程可以降低程序的复杂度,提高程序的可读性和可修改性,所以本软件采用C51进行编程,keil μVision2编译器进行编译。
❸ 单片机:车轮每转一圈产生一脉冲信号,通过单片机完成此脉冲信号计数及显示
电路比较简单,程序原理,设置定时器/计数器为16位外部计数状态,主程序中不断地读取计数器数据并显示即可。
51单片机程序大致如下:
TMOD=0x05;
TH0=0;
TL0=0;
TR0=1;
while(1)
{
a=TH0*256+TL0;
display(a);
}
❹ 如何将单片机信新传导电脑并保存
刚刚回答完一个,也贴给你吧。
#include<reg51.h>
#define uchar unsigned char
uchar num;
sbit K1=P1^0;
sbit K2=P1^1;
sbit K3=P1^2;
sbit K4=P1^3;
sbit K5=P1^4;
sbit K6=P1^5;
sbit K7=P1^6;
sbit K8=P1^7;
void sendchar(uchar a)
{
SBUF=0x30+a;
while(TI==0);
TI=0;
}
main()
{
TMOD=0x20;
TH1=0xfd;
TL1=0xfd;
TR1=1;
while(1)
{
if(K1==0){while(K1==0);sendchar(0);}
if(K2==0){while(K2==0);sendchar(1);}
if(K3==0){while(K3==0);sendchar(2);}
if(K4==0){while(K4==0);sendchar(3);}
if(K5==0){while(K5==0);sendchar(4);}
if(K6==0){while(K6==0);sendchar(5);}
if(K7==0){while(K7==0);sendchar(6);}
if(K8==0){while(K8==0);sendchar(7);}
}
}
❺ 怎么样实现51单片机与计算机无线通信
买块带串口的WIFI模块,单片机通过串口将数据传导WIFI模块,再通过Wifi模块与电脑无线通讯。
❻ 单片机信号采集有干扰怎么办
1)你的信号采集是个什么环境,传输距离很远吗;
2)单片机电源是独立的吗;
3)你的单片机需要和电脑一直连接着的吗;
❼ 求```对单片机的电源处理与抗干扰措施``
“抗电磁干扰器”能消除电源线传导来的电磁干扰,包括浪涌干扰、脉冲群干扰、射频场感应的传导干扰,一器三用,保护单片机、微电脑、智能电路,抗扰度达到国际标准IEC 61000-4或国家标准GB/T 17626规定的2、3、4级(最高等级),避免发生误复位停机、死机、显示错乱、数据丢失、程序篡改、电击穿等故障,防止快速电老化,成倍提高工作年限,是工业信息化的保护神。
在网络上搜索---抗电磁干扰器
可以解决干扰,
无需接地
❽ 电位器在单片机上的用法
1,电位器一般有三个脚,这里用中间那个脚和其他任一脚,TEMP接到单片机的A/D口上,见图。
2,至于这个电压代表多大的温度值,与你实际所用的热敏电阻有关,用热敏电阻做温度是需要校准的,不校准是不知道多少电压代表多大温度值(有的热敏电阻厂家会给出温度和阻值的表,当然有这个就不需要校准了)。
3,1已回答,见图...
❾ stc单片机的spi通信
可能原因1: SPI 线路与 继电器 过于靠近,继电器动作时产生的电磁辐射,或传导 到SPI 通讯线路上,导致的通讯异常。
可能原因2: SPI设备的电源电路去耦效果不佳(滤波电容参数过小),或电源线路过细(包括 电源线、地线回路,回路指从供电源头进来到供电源头回去的线路)。
可能原因3: 继电器驱动电路没有 反向电动势 吸收电路的设计,续流二极管是其中一种设计电路。
❿ 如何将电脑指令通过蓝牙传导到单片机来进行工作
电脑想语音,通过蓝牙给单片机指令!你需要有软件和硬件支持! 硬件是蓝牙发射器,软件就麻烦了,你需要语音识别软件,转换成代码然后自动发送给单片机,需要写上位机程序,最重要的是,现在语音识别系统并不完善,你说的,有时候不能正确识别!
有什么不明白可以问我!