51单片机测量脉宽,数码管显示@[TOC]单片机
#include<REGX51.H>
#include<intrins.h>
typedef unsigned int uint16_t;
typedef unsigned char uint8_t;
uint8_t code seg_cc_table [] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c};//0-9
uint8_t code dig_cc_table [] = {0xfe,0xfd,0xfb,0xf7};
uint16_t high = 0;
uint16_t period = 0;
sbit pulse = P3^2;
uint8_t total_num[] = {0,0,0,0};
void delay_ms(uint16_t xms)
{
uint16_t i = 0;
uint8_t j = 0;
for(i = 0; i < xms; i++)
{
for(j = 0; j < 75; j++)
_nop_();
}
}
void main()
{
uint16_t total =0;
uint16_t i = 1;
P2 = 0Xf0;
P1 = 0x3f;
// TMOD&= 0xf0;
// TMOD|= 0x0d; // 0000 1001
TMOD = 0x09;
TH0 = 0;
TL0 = 0;