⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 例4.txt

📁 新手必备的stm8例程
💻 TXT
字号:
第四个是一个调用ADC的程序,程序实现功能是,电位器旋转,三颗LED的状态也跟着变化。程序宗旨在于简单的应用,简单的控制。只是为了跑动一下各个功能模块,更深入的请自行研究。
#include "STM8S105C_S.h"
#define uint unsigned int
#define uchar unsigned char
uchar table[]={0x00,0x01,0x04,0x08};
uchar i=0;

void GPIO_Init(void)
{
        PD_DDR|=0x0d;                                        //3个LED端口(PD3 PD2 PD0 )设为推挽输出,频率10M  方向,方式,频率
        PD_CR1|=0x0d;
        PD_CR2|=0x0d;
        
        //PD_DDR&=0x7f;                                        //按键端口(PD7)设置为三态输入
        //PD_CR1&=0x7f;                                        //三态输入
        //PD_CR2|=0x80;                                        //使能中断
}

void ADC_Init(void)
{
        ADC_CSR=0x03;                                                //设定AIN3为模拟输入通道
        ADC_CR1=0x03;                                                //设定分频为1/2/ 连续转换模式,ADC电源开关打开
        ADC_CR2=0x28;                                                //禁止触发,禁止扫描,数据右对齐
        ADC_CR3=0x00;                                                //禁止数据缓存
        ADC_CR1=0x03;                                                //设定分频为1/2/ 连续转换模式,ADC电源开关打开
        //ADC_DR                                                                //16为ADC转换数据寄存器
}

void Delay(uint k)
{
uint j;
        for(j=k;j>0;j--);
}

main()
{
GPIO_Init();
ADC_Init();
while (1)
{
                if(ADC_DR>682) PD_ODR=table[3];
                else if(ADC_DR<341) PD_ODR=table[1];
                else PD_ODR=table[2];
}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -