这道单片机的题怎么做?最好详细点有流程

1.模拟输入通道为P1.2脚(ADC2),通过电位器改变输入电压,每秒钟采样4次(采样间隔250ms),只取高8位,采样结果通过串口发送到PC机端,通过串口调试助手接收显... 1.模拟输入通道为P1.2脚(ADC2), 通过电位器改变输入电压,每秒钟采样4次(采样间隔250ms),只取高8位,采样结果通过串口发送到PC机端,通过串口调试助手接收显示。 展开
 我来答
意法半导体(中国)投资有限公司 2023-06-12
展开全部
意法半导体致力于引领单片机技术和产品的创新,推动生态系统的建设,为用户提供满意的产品和技术服务。意法半导体单片机产品线拥有业界宽广、极具创新力的32位产品系列 – STM32,覆盖超低功耗、超高性能方向,同时兼具一流的市场竞争力。STM32是ARM Cortex内核单片机和微处理器市场和技术方面的佼佼者,目前提供16大产品线 (F0, G0, F1, F2, F3, G4, F4, F7, H7, MP1, L0, L1, L4, L4+,L5, WB),超过1000个型号。STM32产品广泛应用于工业控制、消费电子、物联网、通讯设备、医疗服务、安防监控等应用领域,其优异的性能进一步推动了生活和产业智能…
11kxmx
2020-02-25 · TA获得超过1.4万个赞
知道大有可为答主
回答量:1.2万
采纳率:70%
帮助的人:2595万
展开全部
这不是什么难事,主要用到定时器、 串口和ADC,但写起来程序也不短。我有类似的可供参,用的是STC12C5608系列单片机。
我编的当然要复杂多了,采集后送液晶屏显示,还保存EEPROM中,定时时间可调 ,采集数据量可调 ,采集完成后发上位机,也可以人工一个一个读取。
程序思路,定时器1作为波特率发生器,另外一个定时器定时50ms中断一次,设一全局变量a赋值为5,每次中断a减1,主程序中等待a为0,即为250ms,然后调 一次AD采集,采集一次即可发送。程序很长,只贴关键部分:
void adchange()//AD采集程序,2路,可改成一路
{
ADC_CONTR=ADC_CONTR|0X80; //10000000 开启转换电源
Delay1ms(1); //延时,等待内部电源稳定
P1M0=P1M0|0X03; //设置p1.0和P1.1所在通道为开/漏模式
P1M1=P1M1|0X03;
ADC_CONTR=0xe0; //11100000 开启P1.0通道开始转换
Delay25us(10); //延时一端时间,使输入电压达到稳定
ADC_DATA =0x00; //清A/D转换结果寄存器
ADC_LOW2 =0x00;
ADC_CONTR |= 0x08; //ADC_START=1,开始转换
while(!(ADC_CONTR&0x10)); //0001,0000 等待A/D转换结束
temp1=ADC_DATA; //暂存转换结果高8位
temp2=ADC_LOW2;暂存转换结果低8位,不过只有后2位有用
//总结果是高8位乘4加低8位
ADC_CONTR=ADC_CONTR&0xe7; //将ADC_FLAG软件清零
Delay25us(1);
ADC_CONTR=0xe1; //11100000 开启P1.1通道开始转换
Delay25us(10); //延时一端时间,使输入电压达到稳定
ADC_DATA =0x00; //清A/D转换结果寄存器
ADC_LOW2 =0x00;
ADC_CONTR |= 0x08; //ADC_START=1,开始转换
while(!(ADC_CONTR&0x10)); //0001,0000 等待A/D转换结束
temp3=ADC_DATA; //读取转换结果
temp4=ADC_LOW2;
ADC_CONTR=ADC_CONTR&0xe7; //将ADC_FLAG软件清零
Delay25us(1);
P1M0=P1M0&0X00; //设置P1口为普通I/O模式,以便用P1口显示数据。

P1M1=P1M1&0X00;

}
void init1()//定时器初始化设置
{
TMOD=0x21;//设置定时器1为工作方式2定时器0为工作方式1
// AUXR |= 0x40;//定时器2按1T单片机的机器周期工作,否则只能工作在很低的波特率下才能保证误差不超规定
TH1=0xfd;
TL1=0xfd;
//PCON|=0X80;//波特率加倍
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
}
void send(uchar a1) //串口发送程序,一次发1个数据

{
led=0;//这是发送指示灯
SBUF=a1;
while(!TI);
TI=0;
Delay1ms(12);//我用的是1T单片机12ms才相当于普通单片机的1ms
led=1;
}
追问
有程序吗?,这当初是课堂上的实验题,后来我实验本弄丢了,找不到。
意法半导体(中国)投资有限公司
2020-01-15 广告
单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制... 点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
沙里波特
2020-02-24 · TA获得超过5428个赞
知道大有可为答主
回答量:1.1万
采纳率:95%
帮助的人:670万
展开全部
规模,有点大。
实际上,这就不是一道题。
追问
大三实验题来的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式