自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 PFS172-S16A : Timer2

Timer 2 暫存器 :代碼 :#include "extern.h"bit LED : pa.0;void FPPA0 (void) { .ADJUST_IC SYSCLK=IHRC/4 $ LED out, low; // X堤螿薹 : Y / [ 2*(K+1) * S1 * (S2+1) ] // 100Hz : 4M / [ 2*(249+1) * 4 * (19+1) ] TM2C = 0b0001_00_0_0; // 妏蚚炵緙, Tim.

2021-06-07 16:38:51 121

原创 PFS172-S16A : Timer16

站存器精簡寫法 :代碼 :#include "extern.h"bit LED : pa.0;void FPPA0 (void) { .ADJUST_IC SYSCLK=IHRC/4 $ LED out, low; // 輸出腳 // 注意 TIM16 的中斷時間只能是 BIT8~BIT15 變化的時候,不支持BIT7及以下或其他時間...用法有限... $ T16M SYSCLK, /64, BIT15; // 使用系統時間(16M/4), 64分頻, 2^(15.

2021-06-07 15:40:04 121

原创 應廣 IDE 常用功能說明

說明如下 :

2021-06-05 15:20:49 271

原创 PFS172-S16A : ADC

這是用 PA0 (AD10) 來當作 ADC 輸入引腳的範例,如果讀到數值大於 128 就使…暫存器 :代碼 :#include "extern.h"bit LED : pa.0;void FPPA0 (void){ .ADJUST_IC SYSCLK=IHRC/4 pac.0 = 1; // PA0 設為輸出 ADCC = 0b1000_0000; // 啟用 ADC ADCC |= 0b0010_1000; // 使用 PA0 (AD10) 做為 ADC 輸入腳

2021-06-05 15:08:41 247 1

原创 PFS172-S16A : IO 輸入輸出

這是 PA0 輸出, PA7輸入 的範例。如果 PA7 輸入 1,則 PA0 輸出 1。反之亦然。腳位 :寄存器 :代碼 :#include "extern.h"bit LED : pa.0;bit BTN : pa.7;void FPPA0 (void){ .ADJUST_IC SYSCLK=IHRC/4 // 16MHz / 4 = 4MHz $ LED out, low; // 低電平輸出 $ BTN in, pull; // 上拉輸入 // p

2021-06-05 15:00:20 226

原创 PFS172-S16A : IO 輸出

這是一段讓 PA0 每秒電平切換一次的範例,如果接上 LED 就會一秒變化一次的閃爍。腳位 :寄存器 :代碼 :#include "extern.h"bit LED : pa.0;void FPPA0 (void){ .ADJUST_IC SYSCLK=IHRC/4 // 16M/4=4M pac.0 = 1; // PA0 設為輸出 // pac = 0b0000_0001; // PA0 設為輸出 (同上, 只是不同寫法) // $ LED OUT, LOW;

2021-06-05 14:49:30 79

原创 SN8F5703 : ADC

代碼 :#include <SN8F5703.h>#include <stdio.h>// 這些數值只有在 MCU 主頻為 32MHz 才正常工作#define L_S0RELH_4800 0x03#define L_S0RELL_4800 0x98#define L_S0RELH_9600 0x03#define L_S0RELL_9600 0xcc#define L_S0RELH_19200 ...

2021-05-31 16:27:01 481

原创 SN8F5703 : UART 發送 & 接收

可以先參考這篇,因為是由這篇改進而來https://blog.csdn.net/yenlinlab/article/details/117353498需要注意的是,發送與接收的暫存器都是 S0BUF。S0BUF 同時能取出 RX 接收資料,也能將要發送的 TX 資料寫入 S0BUF。代碼 :#include <SN8F5703.h>// 這些數值只有在 MCU 主頻為 32MHz 才正常工作#define L_S0RELH_4800 0x03#define

2021-05-28 15:39:34 261

原创 SN8F5703 : UART 發送

發送腳 :代碼 :#include <SN8F5703.h>// 這些數值只有在 MCU 主頻為 32MHz 才正常工作#define L_S0RELH_4800 0x03#define L_S0RELL_4800 0x98#define L_S0RELH_9600 0x03#define L_S0RELL_9600 0xcc#define L_S0RELH_19200 0x03#define L_

2021-05-28 10:12:00 289

原创 SN8F5703 : PWM 輸出

寄存器:代碼:#include <SN8F5703.h>#define P22_PWM10_ENABLE 0x01#define P24_PWM11_ENABLE 0x02#define P17_PWM12_ENABLE 0x04#define P23_PWM20_ENABLE 0x10#define P25_PWM21_ENABLE 0x20#define P16_PWM22_ENABLE 0x40

2021-05-25 14:17:58 488 2

原创 SN8F5703 : Time 2 使用方法 (基本-自動重裝)

這個好處就是 : 不用每次把時間數值寫在中斷裡// 0.001秒(1ms) : 65535-((16M/12)*0.001s)=65535-1333=64202(FACA)// 0.01秒(10ms) : 65535-((16M/12)*0.01s)=65535-13333=52202(CBEA)// 0.03秒(30ms) : 65535-((16M/12)*0.03s)=65535-40000=25535(63BF)// 0.049秒(49ms) : 65535-((16M/12)*0.049

2021-05-25 12:32:01 141

原创 SN8F5703 : Time 2 使用方法 (基本-手動重裝)

用法與 Timer 0 和 Timer 1 一樣// 0.001秒(1ms) : 65535-((16M/12)*0.001s)=65535-1333=64202(FACA)// 0.01秒(10ms) : 65535-((16M/12)*0.01s)=65535-13333=52202(CBEA)// 0.03秒(30ms) : 65535-((16M/12)*0.03s)=65535-40000=25535(63BF)// 0.049秒(49ms) : 65535-((16M/12)*0.04

2021-05-25 12:22:51 131

原创 SN8F5703 : Timer 0 + Timer 1 使用方法

可以先參考前篇文章 :https://blog.csdn.net/yenlinlab/article/details/117229323#include <SN8F5703.h>bit f0 = 0; // Timer 0 標誌位bit f1 = 0; // Timer 1 標誌位void Timer0ISR(void) interrupt ISRTimer0{ f0 = 1; TH0 = 0xFA; // Time 0 Hight byte (1

2021-05-25 11:24:01 266 1

原创 SN8F5703 : Time 0 使用方法

這是一個用 Time 0 去控制 P03 腳,產生 1ms 的電位變換。時間參數只要調整 TH0 (Time 0 高位), TL0 (Time 0 低位) 還有 CLKSEL (主頻) 等這三個參數,計算公式就寫在代碼註解裡了,應該能很好理解。// 0.001秒(1ms) : 65535-((16M/12)*0.001s)=65535-1333=64202(FACA)// 0.01秒(10ms) : 65535-((16M/12)*0.01s)=65535-13333=52202(CBEA)//

2021-05-24 18:34:41 282

原创 SN8F5703 : 基本 IO 輸出

輸入或輸出設置 :開漏或推挽設置 :代碼 :sbit P0_3 = P0^3;sbit P0_5 = P0^5;sbit P0_6 = P0^6;void main(){ P0M = 0xFF; // 設定P0x輸出或輸入 // Port 0 input/output mode register. // 0: Input mode, 1: Output mode P0OC = 0xFF; // (可不寫) 設定開漏或推挽輸出 { 0:推挽(預設), 1:開漏 } ( 只.

2021-05-17 18:49:53 604

原创 DA14531 UART 輸出

DA14531 UART 輸出#include "arch_system.h"#include "uart_utils.h"void delay(uint32_t i){ while(i--);} int main(void){ system_init(); GPIO_ConfigurePin(GPIO_PORT_0, GPIO_PIN_6, OUTPUT, PID_UART1_TX, false); // P0_6: TX GPIO_ConfigurePin(GP

2021-04-16 20:35:11 445

原创 DA14531 基本 IO 控制

只要 P0_11 是高電平,LED ( P0_9 ) 就會閃快一點,反之就慢一點// 延遲void delay(uint32_t i){ while(i--);}void main(){ GPIO_ConfigurePin(GPIO_PORT_0, GPIO_PIN_9, OUTPUT, PID_GPIO, false); // P0_9 輸出 GPIO_ConfigurePin(GPIO_PORT_0, GPIO_PIN_11, INPUT_PULLDOWN, PID_GPI

2021-04-16 19:37:00 759

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除