电阻、电容、电感测试仪毕业设计(编辑修改稿)内容摘要:
断子程序 { TH0 = 0x3c。 TL0 = 0xb0。 count++。 } void t1(void) interrupt 3 using 0//计数器中断子程序 桂林电子科技大学毕业设计(论文)报告用纸 第 12 页 共 47 页 { counter++。 } /****************************** 阻值公式换算 (单位 :欧姆 ) *******************************/ void R_deal(void) { result = (6557705 / pinlv 200) / 2。 //100~10k 欧姆 if (R_change == 0) { result = (6557705 / pinlv 20xx0) / 2。 //10k~1M 欧姆 } if (result 20xx0 amp。 amp。 result 400000)//修正 { result = result * 939 / 1000。 } else { result = result * 891 / 1000。 } } /***************************** 容值公式换算 (单位 :PF) ******************************/ void C_deal(void) { result = 13383072 / pinlv。 //100~1000PF if (C_change == 0)//1000~10000PF { result = 2540851 / pinlv。 } if (result 277)//修正 { result = result * 36 / 100。 桂林电子科技大学毕业设计(论文)报告用纸 第 13 页 共 47 页 } if (result = 277 amp。 amp。 result 288) { result = result * 430 / 1000。 } if (result = 288 amp。 amp。 result 318) { result = result * 507 / 1000。 } if (result = 318 amp。 amp。 result 450) { result = result * 614 / 1000。 } if (result = 450 amp。 amp。 result 470) { result = result * 65 / 100。 } if (result = 470 amp。 amp。 result 1455) { result = result * 72 / 100。 } if (result = 3295 amp。 amp。 result 9000) { result = result * 789 / 1000。 } } /****************************** 感值公式换算 (单位 :uH) ******************************/ void L_deal(void) { pinlv = pinlv * 100。 //频率分频还原 result = (6069931 / pinlv) * (6069931 / pinlv)。 if (result = 3600)//修正 { 桂林电子科技大学毕业设计(论文)报告用纸 第 14 页 共 47 页 result = result * 2。 } if (result = 2445 amp。 amp。 result 3600) { result = result * 100 / 65。 } if (result = 1245 amp。 amp。 result 2445) { result = result * 100 / 80。 } if (result = 552 amp。 amp。 result 1245) { result = result * 100 / 70。 } if (result = 465 amp。 amp。 result 552) { result = result * 100 / 84。 } if (result = 328 amp。 amp。 result 465) { result = result * 1000 / 765。 } if (result 328) { result = result * 100 / 79。 } } /****************************** 转换成代码表 *****************************/ void daima(void) { unsigned char j, i = 0。 flag = result。 while (flag / 10) 桂林电子科技大学毕业设计(论文)报告用纸 第 15 页 共 47 页 { flag = flag / 10。 i++。 } if (i = 2) { cifang = i2。 } else cifang = 0。 for (j=0。 jcifang。 j++) { result = result / 10。 } bai = result / 100。 shi = result / 10 % 10。 ge = result % 10。 SaveData[0] = Tab[bai]。 SaveData[1] = Tab[shi]。 SaveData[2] = Tab[ge]。 SaveData[3] = Tab[cifang]。 } /****************************** ICM7218_LED 显示 ******************************/ void display(void) { unsigned char i。 Mode = 1。 //写命令字 ICM7218 = 0xf0。 //十六进制非译码正常工作 ,后跟显示数据 Mode = 0。 //写入数据 for (i=0。 i8。 i++) { ICM7218 = SaveData[i]。 } 桂林电子科技大学毕业设计(论文)报告用纸 第 16 页 共 47 页 } /***************************** ISD1420 语音播放 ******************************/ void play(void) { unsigned char i。 P_tab[0] = Addr[bai]。 //给表赋值 P_tab[1] = Addr[shi]。 P_tab[2] = Addr[ge]。 P_tab[3] = Addr[10]。 P_tab[4] = Addr[cifang]。 P_tab[5] = Addr[11]。 if (R_led == 0)//电阻 欧 { P_tab[6] = Addr[12]。 } if (C_led == 0)//电容 皮法 { P_tab[6] = Addr[13]。 } if (L_led == 0)//电感 微亨 { P_tab[6] = Addr[14]。 } for (i=0。 i7。 i++) { P0 = P_tab[i]。 //地址 delay(20xx0)。 Play = 0。 //播放 delay(20xx0)。 while (Feedback == 1)。 //等待 EOM 结束反馈 Play = 1。 delay(20xx0)。 } 桂林电子科技大学毕业设计(论文)报告用纸 第 17 页 共 47 页 } /***************************** 主函数 ******************************/ void main(void) { R_select = 1。 //初始化 C_select = 1。 L_select = 1。 R_led = 1。 C_led = 1。 L_led = 1。 Play = 1。 Feedback = 1。 while (1) { /*****************电阻 *********************/ if (R_select ==0 )//测电阻 { delay(20xx)。 //去抖动 if (R_select == 0) { R_led = 0。 C_led = 1。 L_led = 1。 F_B = 0。 //模拟开关电阻频率输出 F_A = 0。 delay(20xx0)。 C_change = 1。 R_change = 1。 //低量程 delay(50000)。 delay(50000)。 pl()。 //测频 if (pinlv 164)//是否需要转换 (高量程 )。 { 桂林电子科技大学毕业设计(论文)报告用纸 第 18 页 共 47 页 R_change = 0。 delay(50000)。 delay(50000)。 pl()。 } R_deal()。 //结果 daima()。 //代码转换 display()。 //显示 //play()。 //语音播放 } } /******************电容 ***********************/ if (C_select == 0)//测电容 { delay(20xx)。 //去抖动 if (C_select == 0) { C_led = 0。 R_led = 1。 L_led = 1。 F_B = 0。 //模拟开关电容频率输出 F_A = 1。 delay(20xx0)。 C_change = 1。 //低量程 R_change = 1。 delay(50000)。 delay(50000)。 pl()。 //测频 if (pinlv 13383。电阻、电容、电感测试仪毕业设计(编辑修改稿)
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。