微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 用STC12C5A60S2自制逻辑分析仪

用STC12C5A60S2自制逻辑分析仪

时间:11-30 来源:互联网 点击:
逻辑分析仪对于开发者来说很重要,现在我们用STC12C5A60S2单片机制作一个

制作资料和上位机程序下载:http://www.51hei.com/bbs/dpj-20393-1.html,下面是单片机高速采样程序:

#include

//======================================================================================
//======================================================================================
void UartInit(void) //串口初始化函数28800bps@24MHz
{
IP = 0x02;
IPH = 0x10;
IP2 = 0x00;
IPH2 = 0x00; //设置中断优先级
PCON &= 0x7f;//波特率不倍速
SCON = 0x50;//8位数据,可变波特率
REN = 1; //启动接收
BRT = 0xE6; //设定独立波特率发生器重装值
AUXR |= 0x04;//独立波特率发生器时钟为Fosc,即1T
AUXR |= 0x01;//串口1选择独立波特率发生器为波特率发生器
AUXR |= 0x10;//启动独立波特率发生器
ES = 1; //开串行口1中断
//EA = 1; //开总中断
}
//======================================================================================
//======================================================================================
void Init_Timer0(void) //定时器0初始化函数
{
TMOD |= 0x02; //定时器0工作在模式2
AUXR |= 0x80; //定时器0工作在1T模式
TH0 = 0xff;
TL0 = 0xff; //定时初值
TR0 = 1; //启动定时器
}
//======================================================================================
//======================================================================================
void Init_Pca(void) //PCA初始化函数
{
CMOD = 0x04; //计数脉冲源为T0溢出脉冲
CCON = 0;
CH=0;
CL=0;
CCAPM0 = 0x31; //模块0,16位捕获模式,跳变触发中断
CCAPM1 = 0x42; //模块1,8位PWM 无中断
CR = 1; //启动PCA
}

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top