2024-09-01
售卖作品
00

2个按键修改DAC输出

在这里插入图片描述

c
#include <reg52.h> #include <I2C.H> sbit LS138A = P2 ^ 2; sbit LS138B = P2 ^ 3; sbit LS138C = P2 ^ 4; const unsigned char Disp_Tab[10] ={ 0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f }; unsigned char AD_CHANNEL; unsigned char LedOut[8]; sbit key_01 = P3 ^ 0; sbit key_02 = P3 ^ 1; sbit key_03 = P3 ^ 2; sbit key_04 = P3 ^ 3; /* 延时函数 */ void delay_ms_key( unsigned char t ) /* 延时xms */ { unsigned char ttt; while ( t-- ) { for ( ttt = 0; ttt < 125; ttt++ ) ; } } /* * 四个按键的检测函数 * 按键则返回1 2 3 4 * 无按键则返回0xff */ unsigned char KeySscan( void ) { unsigned char keyvaluee = 0xff; if ( key_01 == 0 ) { delay_ms_key( 10 ); if ( key_01 == 0 ) { while ( key_01 == 0 ) ; return(1); } } if ( key_02 == 0 ) { delay_ms_key( 10 ); if ( key_02 == 0 ) { while ( key_02 == 0 ) ; return(2); } } if ( key_03 == 0 ) { delay_ms_key( 10 ); if ( key_03 == 0 ) { while ( key_03 == 0 ) ; return(3); } } if ( key_04 == 0 ) { delay_ms_key( 10 ); if ( key_04 == 0 ) { while ( key_04 == 0 ) ; return(4); } } return(0xff); } /* ****************************************************************** / */ void main() { int adadadad = 0; /* 电压值 占位数 */ unsigned char ad_value = 32; /* 电压值 扩大十倍 按键修改 */ unsigned char anjianzhi = 0xff; TMOD = 0x11; EA = 1; TH0 = (65536 - 3000) / 256; TL0 = (65536 - 3000) % 256; ET0 = 1; TR0 = 1; LedOut[1] = Disp_Tab[ad_value % 100 / 10] | 0x80; LedOut[0] = Disp_Tab[ad_value % 10]; adadadad = (int) (ad_value * 5.1); /* 用于发给DA数据 */ DACconversion( PCF8591, 0x40, adadadad ); /* DAC 数模转换 */ while ( 1 ) { anjianzhi = KeySscan(); if ( anjianzhi != 0xff ) { if ( anjianzhi == 1 ) { ad_value++; adadadad = (int) (ad_value * 5.1); /* 用于发给DA数据 */ DACconversion( PCF8591, 0x40, adadadad ); /* DAC 数模转换 */ } else if ( anjianzhi == 2 ) { ad_value--; adadadad = (int) (ad_value * 5.1); /* 用于发给DA数据 */ DACconversion( PCF8591, 0x40, adadadad ); /* DAC 数模转换 */ } LedOut[1] = Disp_Tab[ad_value % 100 / 10] | 0x80; LedOut[0] = Disp_Tab[ad_value % 10]; } } }
如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:Dong

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC。本作品采用《知识共享署名-非商业性使用 4.0 国际许可协议》进行许可。您可以在非商业用途下自由转载和修改,但必须注明出处并提供原作者链接。 许可协议。转载请注明出处!