本文目录一览

1,proteus仿真时数码管为什么没显示

proteus仿真时数码管没显示是设置程序出问题,具体方法以实例操作如下准备软件:proteus软件、uVision2软件。1、打开proteus软件。2、这里用到74HC573锁存器,直接用P0口连接锁存器。3、可以实现位选,也可以位选,大大节省了IO,这里记得加上上拉电阻,否则不显示。4、选用6位共阴数码管。5、把位选和段选的线连接对应好。6、打开uVision2软件。7、共阴数码管的段编码如下8、编写动态显示主程序,图中为第一位数码管显示“1”。9、补齐6位数码管的显示代码后,编译代码。10、在proteus中选择对应的代码进行仿真,proteus中效果如图。11、真实的硬件效果是从1-6同时显示在屏幕中。
1.程序缺少循环,跑飞了。2.电阻太大。不亮,原因并不在单片机上。你就是把单片机删除掉,只是保留电阻和数码管,数码管都不会亮。把电阻,改成330欧姆,试试看。
你电路都画错了,首先数码管最好用三极管或者驱动芯片去驱动,其次,你这IO口都输出低电平了数码管怎么会亮?
输出信号全是低电平当然不会亮了,需要高电平
要么把最小系统全部去掉,要么搭建完整的最小系统电路,只搭一部分好像不行。。。。。。你把ALE拉高,在加上复位系统,再式一下

proteus仿真时数码管为什么没显示

2,ref192 输出电压怎么是37v

AD7705(5V)一般都使用2.5V基准源(高精度AD大多如此),这跟一些单片机自带AD不同,使用2.5V外部基准源时,AD的精度要大大高于使用5V基准源(特别是5V电压直接取自电源),只要5V电源稍微波动一点,AD的精度到哪里去都不知道了。基准电压源是当代模拟集成电路极为重要的组成部分,它为串联型稳压电路、A/D和D/A转化器提供基准电压,也是大多数传感器的稳压供电电源或激励源。另外,基准电压源也可作为标准电池、仪器表头的刻度标准和精密电流源。实现方式1. 电阻分压:2. 只能作为放大器的偏置电压或提供放大器的工作电流。这主要是由于其自身没有稳压作用,故输出电压的稳定性完全依赖于电源电压的稳定性。3. 2.普通正向二极管4. 不依赖于电源电压的恒定基准电压,但其电压的稳定性并不高,且温度系数是负的,约为-2mV/℃5. 3.齐纳二极管6. 可克服正向二极管作为基准电压的一些缺点,但其温度系数是正的,约为+2mV/℃7. 4.温度补偿性齐纳二极管8. 体积小、重量轻、结构简单便于集成;但存在噪声大、负荷能力弱、稳定性差以及基准电压较高、可调性较差等缺点。这种基准电压源不适用于便携式和电池供电的场合。9. 5.带隙基准源(采用CMOS,TTL等技术实现)10. 运用半导体集成电路技术制成的基准电压源种类较多,如深埋层稳压管集成基准源、双极型晶体管集成带隙基准源、CMOS集成带隙基准源等。“带隙基准源”是七十年代初出现的一种新型器件,它的问世使基准器件的指标得到了新的飞跃。11. 由于带隙基准源具有高精度、低噪声、优点,因而广泛应用于电压调整器、数据转换器(A/D, D/A)、集成传感器、大器等,以及单独作为精密的电压基准件,低温漂等许多微功耗运算放。
通过电路板具有的升压功能。

ref192 输出电压怎么是37v

3,如何在multisim10绘制元件

如果只是画示意图,直接画就可以了,如果要仿真,则必须有spice模型。
1。source库:包括电源、信号电压源、信号电流源、可控电压源、可控电流源、函数控制器件6个类。 2。basic库:包含基础元件,如电阻、电容、电感、二极管、三极管、开关等; 3。diodes:二极管库,包含普通二极管、齐纳二极管、二极管桥、变容二极管、pin二极管、发光二极管等。 4。transisitor库:三极管库,包含npn、pnp、达林顿管、igbt、mos管、场效应管、可控硅等; 5。analog库:模拟器件库,包括运放、滤波器、比较器、模拟开关等模拟器件 6。ttl库:包含ttl型数字电路 如7400 7404等门bjt电路。 7。coms库:coms型数字电路 如74hc00 74hc04等mos管电路。 8。mcu model: mcu模型,multisim的单片机模型比较少,只有8051 pic16的少数模型和一些rom ram等 9。advance periphearls库:外围器件库,包含键盘、lcd、和一个显示终端的模型。 10。mixc digital:混合数字电路库,包含dsp、cpld、fpga、pld、单片机-微控制器、存储器件、一些接口电路等数字器件。 11。mixed:混合库,包含定时器、ac/da转换芯片、模拟开关、震荡器等; 12。indicators:指示器库,包含电压表、电流表、探针、蜂鸣器、灯、数码管等等显示器件。 13。power:电源库,包含保险丝、稳压器、电压抑制、隔离电源等 14。misc:混合库,包含晶振、电子管、滤波器、mos驱动、和其他一些器件等 15。rf:rf库,包含一些rf器件,如高频电容电感、高频三极管等 16。elector mechinical:电子机械器件库,包含传感开关、机械开关、继电器、电机等。。

如何在multisim10绘制元件

4,89C51单片机的p3口接一个共阳极的数码管

//电路说明如下。 //单片机:使用51系列兼容的即可; //4×4矩阵键盘:接在P1口; //两位数码显示器: P0口输出七段码,P2口输出位选码。 //============================================================== //C语言程序如下。 /************************************************************* * 文件名: KEY_LED.c * 功能 : 对4×4矩阵键盘进行输出,在数码管后两位显示按键值。 **************************************************************/ #include <reg51.h> #include <intrins.h> #define uint unsigned int #define uchar unsigned char //uchar code table[10] = {0x03, 0x9f, 0x25, 0x0d, 0x99, 0x49, 0x41, 0x1f, 0x01, 0x09}; uchar code table[10] = {0xC0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8, 0x80, 0x90}; /************************************************************** * 名称 : Delay_1ms() * 功能 : 延时子程序,延时时间为 1ms * x * 输入 : x (延时一毫秒的个数) * 输出 : 无 ***************************************************************/ void Delay_1ms(uint x) { uint i; uchar j; for(i = 0; i < x; i++) for(j = 0; j <= 148; j++); } /************************************************************** * 名称: Keyscan() * 功能: P1外接4×4按键, 按照扫描法读出键值 * 输出: 按键值0~15/如无键按下, 返回16 ***************************************************************/ uchar Keyscan(void) { uchar i, j, temp, Buffer[4] = {0xef, 0xdf, 0xbf, 0x7f}; for(j = 0; j < 4; j++) { //循环四次 P1 = Buffer[j]; //在P1高四位分别输出一个低电平 temp = 0x01; //计划先判断P1.0位 for(i = 0; i < 4; i++) { //循环四次 if(!(P1 & temp)) //从P1低四位,截取1位 return (i + j * 4); //返回取得的按键值 temp <<= 1; //判断的位,左移一位 } } return 16; //判断结束,没有键按下,返回16 } //呵呵,实质性的语句不过8行,就是这么简练! /************************************************************** * 名称: Display(uchar k) * 功能: 将参数分成十位、个位分别显示 * 输入: k (键盘数值) * 输出: P0口输出七段码,P2口输出位选码 ***************************************************************/ void Display(uchar k) { P2 = 0; //消隐 P0 = table[k / 10]; P2 = 0x02; Delay_1ms(5); //显示5ms十位 P2 = 0; //消隐 P0 = table[k % 10]; P2 = 0x01; Delay_1ms(5); //显示5ms个位 } /************************************************************** * 名称 : Main() * 功能 : 主函数 ***************************************************************/ void Main(void) { uchar Key_Value = 16, Key_Temp1, Key_Temp2; //两次读出的键值 while(1) { //---------以下读入按键、消掉、等待按键释放 P1 = 0xff; Key_Temp1 = Keyscan(); //先读入按键 if(Key_Temp1 != 16) { //如果有键按下 //Delay_1ms(10); //延时一下 Display(Key_Value); //可用显示代替延时 Key_Temp2 = Keyscan(); //再读一次按键 if (Key_Temp1 == Key_Temp2)//必须是两次相等 Key_Value = Key_Temp1; //才保存下来,这就是消除抖动 while(Keyscan() <= 16); //等待按键释放 } //---------以下是对按键的处理 Display(Key_Value); //显示键值 } }

5,单片机的十进制记数法的原理

1.基本知识 十进制 基数为10,逢10进1。在十进制中,一共使用10个不同的数字符号,这些符号处于不同位置时,其权值各不相同。 二进制 基数为2,逢2进1。在二进制中,使用0和1两种符号。 八进制 基数为8,逢8进1。八进制使用8种不同的符号,它们与二进制的转换关系为: 0:000 1:001 2:010 3:011 4:100 5:101 6:110 7:111 十六进制 基数为16,逢16进1。十六进制使用16种不同的符号,它们与二进制的转换关系为: 0:0000 1:0001 2:0010 3:0011 4:0100 5:0101 6:0110 7:0111 8:1000 9:1001 A:1010 B:1011 C:1100 D:1101 E:1110 F:1111 二进制数的运算 算术运算:加法 0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 10(向高位进1) 算术运算:减法 0 ? 0 = 0 0 ? 1 = 1(向高位借1) 1 ? 0 = 1 1 - 1 = 0 逻辑运算:或(∨) 0 ∨ 0 = 0 0 ∨ 1 = 1 1 ∨ 0 = 1 1 ∨ 1 = 1 逻辑运算:与(∧) 0 ∧ 0 = 0 0 ∧ 1 = 0 1 ∧ 0 = 0 1 ∧ 1 = 1 逻辑运算:取反 0取反为1 1取反为0 注意:算术运算会发生进位、借位,逻辑运算则按位独立进行,不发生位与位之间的关系,其中,0表示逻辑假,1表示逻辑真。 2.转换为十进制 二进制化为十进制 例:将二进制数101.01转换成十进制数 (101.01)2 = 1×22 + 0×21 + 1×20 + 0×2-1 + 1×2-2 = (5.25)10 八进制化为十进制 例:将八进制数12.6转换成十进制数 (12.6)8 = 1×81 + 2×80 + 6×8-1 = (10.75)10 十六进制化为十进制 例:将十六进制数2AB.6转换成十进制数: (2AB.6)16 = 2×162 + 10×161 + 11×160 + 6×16-1 = (683.375)10 3.转换为二进制 八进制化为二进制 规则:按照顺序,每1位八进制数改写成等值的3位二进制数,次序不变。 例: (17.36)8 = (001 111 .011 110)2 = (1111.01111)2 十六进制化为二进制 规则:每1位十六进制数改写成等值的4位二进制数,次序不变。 例: (3A8C.D6)16 = (0011 1010 1000 1100.1101 0110)2 = (11101010001100.1101011)2 十进制整数化为二进制整数 规则:除二取余,直到商为零为止,倒排。 例:将十进制数86转化为二进制 2 | 86…… 0 2 | 43…… 1 2 | 21…… 1 2 | 10…… 0 2 | 5 …… 1 2 | 2 …… 0 2 | 1 …… 1 结果:(86)10 = (1010110)2 十进制小数化为二进制小数 规则:乘二取整,直到小数部分为零或给定的精度为止,顺排。 例:将十进制数0.875转化为二进制数 0.875 × 2 1.75 × 2 1.5 ×2 1.0 结果:(0.875)10 = (0.111)2 4.转换为八进制 二进制化为八进制 整数部份从最低有效位开始,以3位一组,最高有效位不足3位时以0补齐,每一组均可转换成一个八进制的值,转换完毕就是八进制的整数。 小数部份从最高有效位开始,以3位一组,最低有效位不足3位时以0补齐,每一组均可转换成一个八进制的值,转换完毕就是八进制的小数。 例:(11001111.01111)2 = (11 001 111.011 110)2 = (317.36)8 十六进制化为八进制 先用1化4方法,将十六进制化为二进制;再用3并1方法,将二进制化为8制。 例: (1CA)16 = (000111001010)2 = (712)8 说明:小数点前的高位零和小数点后的低位零可以去除。 十进制化八进制 方法1:采用除8取余法。 例:将十进制数115转化为八进制数 8| 115…… 3 8| 14 …… 6 8| 1 …… 1 结果:(115)10 = (163)8 方法2:先采用十进制化二进制的方法,再将二进制数化为八进制数 例:(115)10 = (1110011)2 = (163)8 5.转换为十六进制 二进制化为十六进制 整数部份从最低有效位开始,以4位为一组,最高有效位不足4位时以0补齐,每一组均可转换成一个十六进制的值,转换完毕就是十六进制的整数。 小数部份从最高有效位开始,以4位为一组,最低有效位不足4位时以0补齐,每一组均可转换成一个十六进制的值,转换完毕就是十六进制的小数。 例:(11001111.01111)2 = (1100 1111 .0111 1000)2 = (CF.78)16 八进制化为十六进制 先将八进制化为二进制,再将二进制化为十六进制。 例:(712)8 = (111001010)2 = (1CA)16 十进制化为十六进制 方法1:采用除16取余法。 例:将十进制数115转化为八进制数 16| 115…… 3 16| 7 …… 7 结果:(115)10 = (73)16 方法2:先将十进制化为二进制,再将二进制化为十六进制。 ?

文章TAG:九齐单片机  proteus仿真时数码管为什么没显示  
下一篇