?? main.c
字號:
/* MAIN.C file
* Copyright (c) 軒微科技
本程序功能為讓軒微科技STM8S105S4開發板板載電位器在調節時由STM8S105S4串口輸出當前的ADC值.
*/
#include "stm8s.h"
#include "stm8s_uart2.h"
#include "stm8s_adc1.h"
#include "stm8s_gpio.h"
#include "stm8s_exti.h"
#define LEDS_PORT (GPIOD)
#define LED1_PIN (GPIO_PIN_3)
#define LED2_PIN (GPIO_PIN_2)
#define LED3_PIN (GPIO_PIN_1)
#define LED4_PIN (GPIO_PIN_0)
@far @interrupt void GPIOC5(void)
{
u16 Conversion_Value = 0;
GPIO_WriteReverse(GPIOD, (GPIO_PIN_0 | GPIO_PIN_2 | GPIO_PIN_3 ));
/* Get converted value */
Conversion_Value = ADC1_GetConversionValue();
putStr("yanshan University");
Conversion_Value=Conversion_Value*4.83/1024*1000;
//將數據通過串口輸出
putIntLine(Conversion_Value);
ADC1_ClearFlag (ADC1_FLAG_AWS9 );
}
@far @interrupt void ADC1_IRQHandler(void)
{
}
//延時一段時間
void xwDelay(void)
{
int i=2;
int j=200;
while(i--)while(j--);
}
main()
{
GPIO_Init(GPIOD, (GPIO_PIN_0 | GPIO_PIN_2 | GPIO_PIN_3 ), GPIO_MODE_OUT_PP_LOW_FAST );
// GPIO_Init(GPIOC, GPIO_PIN_5, GPIO_MODE_IN_PU_IT);
// GPIO_Init(GPIOE, GPIO_PIN_6, GPIO_MODE_IN_FL_NO_IT);
//反初始化串口
UART2_DeInit();
//初始化串口
UART2_Init(38400,UART2_WORDLENGTH_8D,UART2_STOPBITS_1,UART2_PARITY_NO, UART2_SYNCMODE_CLOCK_DISABLE, UART2_MODE_TX_ENABLE);
//串口發送串口初始化完成信息
putStrLine("Yes the serialsport is already ok.");
//反初始化ADC
ADC1_DeInit();
//初始化ADC,連續轉換模式
ADC1_Init(ADC1_CONVERSIONMODE_CONTINUOUS,ADC1_CHANNEL_9,ADC1_PRESSEL_FCPU_D2,ADC1_EXTTRIG_TIM,DISABLE,ADC1_ALIGN_RIGHT, ADC1_SCHMITTTRIG_CHANNEL9, DISABLE);
//開始轉換
ADC1_StartConversion();
EXTI_SetTLISensitivity(EXTI_SENSITIVITY_RISE_ONLY);
//開啟PD7的TLI中斷檢測,開啟后無需進行全局中斷開啟即可產生TLI中斷請求.
GPIO_Init(GPIOD,GPIO_PIN_7,GPIO_MODE_IN_FL_IT);
while (1)
{
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -