请教单片机高手一个简单的问题
原本不打算回答的,因为第一信息太少,第二没分。
不过看在楼主级别很高的面上回答一下。
你只有5V电,那么升压问题如前面那位所述。
你传感器输出是什么类型的?你没说,我只好猜,一般24V的三端传感器,不会太复杂,输出模拟量的可能性高,但不管是数字量还是模拟量,如果预估会超过5V,那么简单的做法就是2个电阻分压就行。
分开说:
数字量稳妥点用光耦隔离,则不用太多考虑输入电压。
模拟量则需要运放跟随后再降压,然后做AD
如果是工控用的则有可能是4-20MA,那你还需要电流采样电路,电流转成电压后再AD。
PS:你都16级了,应该知道怎么什么样的提问描述才是好问题吧?
问题:
1,void main(void){
led = 0x00;//这是要让led亮还是灭?如果是灭,那么led是共阴连接,52单片机的准双向IO根本没有那么大的拉电流去驱动led,除非你用的是能将IO配置成推挽输出的52单片机,否则led将一直是灭着的。
open = 1;//这是P0口的,有内部上拉或外部上拉电阻吗?如果没有,这根口线处于高阻态,输入电平是不确定的,按键形同虚设。
2,if(open ==0)//如果按键按下
{
led = 0x00;//这是要让led亮还是灭?如果是亮,led就变成共阳连接了
delay(200);延时
led = 0xff;//假如先前led是亮的,到这一行就灭了
delay(200);延时。上述4行运行的结果,是按键动作一次led亮/灭一次或灭/亮一次
}
假定所选的52单片机IO能配置成推挽的,又假定P0口有内部上拉,上述4行按楼上网友的方法改成
if(open==0)
{
led = ~led;
delay(200);
}
2,然后你在main函数里这样写就好了。
while(1){
PIO1.0=0;
delay(1000ms);
PIO1.0=1;
delay(1000ms);
}
这样D1灯就会每1秒闪一次!
首先设置端口 然后输出一个电平 就可以了
设置端口,输出电平,就行了
高分求单片机高手帮写一段简单的C51程序
define uint unsigned int define uchar unsigned char uchar Receive_Buffer[6];uchar Buf_Index = 0;uchar Time_cnt=0;uchar DRV_OUT=0;sbit val_out=P1^0;uchar code DSY_CODE[]= { 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00 };sbit d1=P3^3;sbit d2=P3^4...
如何学好单片机?
回答: 怎样学好单片机很多想学单片机的人问我的第一句话就是怎样才能学好单片机?对于这个问题我今天就我自己是如何开始学单片机,如何开始上手,如何开始熟练这个过程给大家讲讲。 先说说单片机,一般我们现在用的比较多的是MCS-51与PIC单片机,它们的资料比较多,用的人也很多,市场也很大,我们平时...
如何学习单片机
单片机毕竟过于基础,后来的很多单片机在功能上都有很大的扩展,因此按照我们实验室多数人的路线接下来大多数人会学习 AVR 单片机, AVR 单片机在功能上较 51 有很大提升,集成了 A\/D 、快速 PWM 等很多实用的功能,而且和很多大型的单片机在功能上有很多类似之处,因此如果以后还想掌握其他单片机 AVR 无疑是一个很好...
本人初学单片机,请教高手
uint8 time=0;定时1S中断函数 viod timer(void){ time++ } while(time<5){ if(输入==1),输出=0 else if(输入!=1),输出=1 } while(time<10);\/\/继续后面 这里提供一个便宜的板子 电路和程序都有 买个开发板 问题解决 学生为了将来的工作也应该好好学习下单片机 这个开发板带了USB...
我在学习单片机,但遇到很多芯片资料看不懂,有哪位高手可以教教我如何...
linux驱动程序设计既是个极富有挑战性的领域,又是一个博大精深的内容。linux驱动程序设计本质是属于linux内核编程范畴的,因而是对linux内核和内核编程是有要求的。在学习前你要想了解linux内核的组成,因为每一部分要详细研究的话足够可以扩展成一本厚书。以上只不过是大概的框架,在实际的开发中还会涉及...
想学习单片机如何下手?最好告诉我整个过程的流程。
也推荐郭天祥的《十天学会单片机》视频教程,讲的很基础!那里边还讲了些简单的数电模电知识。你可以买一块你喜欢的单片机,如果你是从郭天祥的视频初学入手的,那么建议不要买郭天祥的那款开发板,买其他品牌的,根据视频所学的知识,应用到你的单片机上!这样的话你才能学于致用。例如:通过控制一个...
请精通单片机的高手进来,我诚心请教一个问题,急急急!
1、应该用89C52就能解决了。都是定时的东西。2、反复论证,提炼系统框图和控制流程图。3、先用仿真,再制作。4、有大问题问导师。小问题Baidu。
学习单片机程序怎么把它学精、
只有经验丰富的熟练高手编出的程序才是适合应用、具备一定可靠性的程序。所谓精,只能靠不断的实践中积累经验练出来,还必须要做到知识面广才行。光靠一块实验板和书本,闭门造车永远达不到精通。即使是高手编出的程序也不能做到100%可靠,所谓百密必有一疏,你的知识面、经验到什么程度、程序便精到...
很简单的单片机程序,,,我是新手,请高手指点
i=0 temp=11110111 i=1 temp=01111011 i=2 temp=00111101 i=3 temp=00011110
如何学习好单片机编程设计
做PCB板就比较简单了。只要懂得使用Protel软件或 AltimDesigner软件就没问题了。但要想做的板子布局美观、布线合理还得费一番功夫了。娴熟的单片机C语言编程、会使用Protel软件或 AltimDesigner软件设计PCB板和具备一定的英文阅读能力,你就是一个遇强则强的单片机高手了。
坚娴恪然: 是的,单片机IO口提供的电流小,所以要外加驱动电路.我一般用ULN2003(输出能力有500mA),或者你还嫌驱动能力不够,用三极管驱动.驱动的意思,举个简单的例子,一个继电器需要50mA的电流才能使其动作,那么你将单片机的IO口直接接到继电器,单片机提供不了那么大的电流,继电器不会动作.就好像1个人的力气是有限的(驱动能力有限),拉动不了一辆卡车,你就需要找来一辆车(驱动芯片或三极管),来拉动这辆卡车.
尖草坪区19856978986: 我是单片机入门菜鸟,想请教单片机高手一个问题! - ?
坚娴恪然: sfr P1=ox90; sfr 是指定一个字节;sbit P1_1=ox91; sbit 是指定一个位.它们不是一回事,别放在一起讨论.再去看看单片机的书,仔细看看“位地址”.看明白了硬件,再来钻研软件.
尖草坪区19856978986: 刚学单片机 有个简单的但我搞不清楚的问题请教各位大虾?
坚娴恪然: 首先解释一下ACALL指令的操作过程:程序计数器内容先加2,指向下一条指令的地址,然后将PC值压入堆栈保存,栈指针SP加2;接着将11位目的地址(addr0~addr10)送程序计数器的低11位(PC0~PC10),PC值的高5位(PC11~PC15)...
尖草坪区19856978986: 51单片机一道简单的题目,请教各位大神 - ?
坚娴恪然: ORG 1000H START:MOV R0,#20H MOV R1,#30H MOV R2,#00H CMP: MOV A,@R0 INC R0 CJNE A,#00H,CMP INC R2 DJNZ R1,CMP MOV 51H,R2 END
尖草坪区19856978986: 一个简单的单片机问题 - ?
坚娴恪然: 在P1.0口上接个二极管. 电压自然就降下来了.
尖草坪区19856978986: 求助:单片机的简单编程题 - ?
坚娴恪然: 1.程序如下:编程思想是把起始地址30H放在R0中,然后用寄存器间址@R0表示地址里存放的数,并用CJNE指令和#0AH比较,不一样就跳转至NEXT,地址加1继续比,比之前先判断下R0中的数等于#50H吗,等于的话表示任务完成了,不用再...
尖草坪区19856978986: 想向各位单片机高手请教一个问题哈.拜谢! - ?
坚娴恪然: 你看下你的单片机pdf 当方向寄存器置一时 是配置成输入还是输出 不同的单片机不一样 PIC单片机的方向寄存器置一是配置成输出 而AVR的正好相反 反正你的这句P6DIR = 0XFF;P6OUT = 0XFF 意思就是将PORT6口的方向寄存器置一 然后输出高电平 这些语句的目的是用来初始化端口 给它一个状态 如果不给它一个状态 它的输出或者输入就会存在不确定性 不利于查找错误
尖草坪区19856978986: 单片机 简单问题 - ?
坚娴恪然: temp的值变为temp按位与16进制数0F.例:假设temp=00110011,temp=temptemp值变为:00000011."按位与"就是一位一位的取“与”,0与0是0,0与1是0,1与1是1....如果长期学单片机请...
尖草坪区19856978986: 跪求单片机问题 - ?
坚娴恪然: 1)5位 2^13 =8K 的地址 2) DIV 需要4个周期 6M的一个周期是2us 四个周期就是8us 3)原码:1010 0100 反码:1101 1011 补码:11011 100 4)你的问题我不是很白 JNC 为0跳 JC 为1跳 5)一次 6)你是不是写错了啊 或者还有东西没有写完 7)A=16H AC=1 OV=0 好好学汇编 现在用汇编 的人越来越少了
尖草坪区19856978986: 单片机简单问题求解?
坚娴恪然: 这应该是硬件的问题.如果你有硬件上的通信模块,那么就需要固定连接,比如串口,I2c,SPI等,如果没有,那只能通过软件模拟,那么接在那个口上就无所谓了!