?? main.c
字號:
//-----------------------------------------------------------------
// 名稱: 用帶SPI接口的數模轉換芯片MCP4921生成正弦波形
//-----------------------------------------------------------------
// 說明: 本例運行時,經MCP4921進行數/模轉換后的輸出信號經調理后的輸出
// 為周期為2ms,幅值為2.5V(+/-)正弦交流信號.
//
//-----------------------------------------------------------------
#include <pic.h>
#define INT8U unsigned char
#define INT16U unsigned int
#define _XTAL_FREQ 20000000UL //20MHZ
//SPI使能與禁用,鎖存使能與禁用
#define SPI_EN() RC6 = 0
#define SPI_DI() RC6 = 1
//當LDAC引腳直接連接低電平時下面的定義取消
//#define LDAC_EN() RC7 = 0
//#define LDAC_DI() RC7 = 1
//正弦波100個采樣點電壓對應的數字值
//幅值為(+/-)1.25V,上移2.5V,輸出正弦電壓區間為: +3.75 ~ +1.25V
//中心點為+2.5V,這三個點(3.75,2.5,1.25)對應的DA值為(3072,2048,1024)
const INT16U SIN_DATA[100] =
{
2048, 2112, 2176, 2239, 2302, 2364, 2424, 2483, 2541, 2596,
2649, 2700, 2748, 2794, 2837, 2876, 2912, 2945, 2974, 3000,
3021, 3039, 3053, 3063, 3069, 3072, 3069, 3063, 3053, 3039,
3021, 3000, 2974, 2945, 2912, 2876, 2837, 2794, 2748, 2700,
2649, 2596, 2541, 2483, 2424, 2364, 2302, 2239, 2176, 2112,
2048, 1984, 1920, 1857, 1794, 1732, 1672, 1613, 1555, 1500,
1447, 1396, 1348, 1302, 1259, 1220, 1184, 1151, 1122, 1096,
1075, 1057, 1043, 1033, 1027, 1024, 1027, 1033, 1043, 1057,
1075, 1096, 1122, 1151, 1184, 1220, 1259, 1302, 1348, 1396,
1447, 1500, 1555, 1613, 1672, 1732, 1794, 1857, 1920, 1984
};
INT8U d;
//SPI數據傳輸(啟動數據傳輸,然后等待傳輸結束,最后返回SSPBUF)
#define SPI_Transmit(x) { SSPBUF = x; while(!BF); d = SSPBUF; }
//-----------------------------------------------------------------
// SPI主機初始化
//-----------------------------------------------------------------
void SPI_MasterInit()
{
}
//-----------------------------------------------------------------
// 主程序
//-----------------------------------------------------------------
void main()
{
}
//-----------------------------------------------------------------
// 定時器中斷程序
//-----------------------------------------------------------------
void interrupt INT_ISR()
{
static INT8U idx = 0; //待發送的D/A傳輸數字索引
if (TMR2IF == 1)
{
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -