性无码一区二区三区在线观看,少妇被爽到高潮在线观看,午夜精品一区二区三区,无码中文字幕人妻在线一区二区三区,无码精品国产一区二区三区免费

  • 回復(fù)
  • 收藏
  • 點(diǎn)贊
  • 分享
  • 發(fā)新帖

菜鳥C,想請(qǐng)教下這段程序問(wèn)題出在哪里,幫我指出下 謝謝

小弟是個(gè)C菜鳥,自己寫了段程序,編譯也沒(méi)有問(wèn)題,但是實(shí)際我用示波器去測(cè)試的時(shí)候,發(fā)現(xiàn)我的12位數(shù)據(jù),原本全部要發(fā)12個(gè)1的,但是其中卻參雜了1111 0000 1111 變成這樣的,自己琢磨了,覺(jué)得是不是我的位定義錯(cuò)了,所以想請(qǐng)C語(yǔ)言高手幫忙看下,指點(diǎn)下,小弟不勝感激,郵箱770510477@qq。com
/*******************************************************************************/
//*版權(quán)信息:
//*文 件 名:UCS5603-V1.0
//*當(dāng)前版本:V1.0
//*晶震頻率:24MHZ(內(nèi)部時(shí)鐘)       
        
/********************************************************************************/
#include 			//MCU頭文件
#include "intrins.h"			//包含nop指令頭文件
#define nop  _nop_();			//宏定義

/********************************定義控制端口************************************/
sbit DO=P2^4;				//定義信號(hào)輸出DO

/**********************************定義變量**************************************/
unsigned int IC=5;			//控制UCS5603個(gè)數(shù)
unsigned int LED_PX;			//像素點(diǎn)數(shù)
unsigned int PWM=4095;		        //UCS5603灰度 
unsigned int Rda,Gda,Bda;              //R、G、B灰度數(shù)據(jù)
unsigned int bdata LED_data;           //可位操作的數(shù)據(jù)發(fā)送暫存變量聲明
sbit bit0=LED_data^0;			//被發(fā)送的數(shù)據(jù)各位定義
sbit bit1=LED_data^1;
sbit bit2=LED_data^2;
sbit bit3=LED_data^3;
sbit bit4=LED_data^4;
sbit bit5=LED_data^5;
sbit bit6=LED_data^6;
sbit bit7=LED_data^7;
sbit bit8=LED_data^8;
sbit bit9=LED_data^9;
sbit bit10=LED_data^10;
sbit bit11=LED_data^11;
bit flag=0;                            //定義一個(gè)標(biāo)志位

/*************************************延時(shí)函數(shù)*************************************/
void delay(unsigned int n)             //n=1,延時(shí)500us
{
	unsigned int i;
	while(n--) 
		for(i=0;i<860;i++);
}
/*************************************延時(shí)4us函數(shù)*************************************/
void delay_us(unsigned int ticks)
{   	  
  for(;ticks!=0;ticks--)
	{
	    _nop_();
		_nop_();
		_nop_();
		_nop_();
		_nop_();
	}	
}
/************************發(fā)送0碼函數(shù),H電平360ns+900,**********************/
void send_data_0()   
{
	 DO=0xff;
	 nop;
	 nop;
	 nop;
	 nop;
	 nop;
	 nop;
	 nop;	   
	 DO=0x00; 
	 nop;
	 nop;
	 nop;
	 nop;nop;nop;nop;nop;nop;nop;nop;nop;
}

/************************發(fā)送1碼函數(shù),H電平700ns+550**********************/
void send_data_1()          
{
	 DO=0xff;
	 nop;
	 nop;
	 nop;
	 nop;
	 nop;
	 nop; 
	 nop;nop;nop;nop;nop;
	 DO=0x00;
	 nop;
	 nop;
	 nop;
	 nop;
	 nop;
	 nop;
	 nop;
}

/**************************發(fā)送1個(gè)字節(jié)數(shù)據(jù),高位先發(fā)*******************************/
void send_data(unsigned int DATA)	
{
	LED_data=DATA;                         
	if(bit11)  send_data_1();  else send_data_0();
	if(bit10)  send_data_1();  else send_data_0();
	if(bit9)   send_data_1();  else send_data_0();
	if(bit8)   send_data_1();  else send_data_0();
	if(bit7)   send_data_1();  else send_data_0();
	if(bit6)   send_data_1();  else send_data_0();
	if(bit5)   send_data_1();  else send_data_0();
	if(bit4)   send_data_1();  else send_data_0();
	if(bit3)   send_data_1();  else send_data_0();
	if(bit2)   send_data_1();  else send_data_0();
	if(bit1)   send_data_1();  else send_data_0();
	if(bit0)   send_data_1();  else send_data_0(); 
}

/******************************發(fā)送W時(shí)長(zhǎng)數(shù)據(jù)*************************************/
void W_Bit(void)
{
	DO=0x00;
	delay_us(18);	  //15us
}

/*********************************發(fā)送工作碼數(shù)據(jù)**************************************/
void Wokr_Bit(void)
{
    send_data(0xfff);
	send_data(0xfff);
	send_data(0xfff);
	send_data(0xfff);
	send_data(0x01);
	W_Bit();
	send_data(0xfff);//電流設(shè)定值=21ma
}
/*********************************發(fā)送rest-bit數(shù)據(jù)**************************************/
void rest_Bit(void)
{
	DO=0x00;
	delay(8);	  //1500us
}
/*********************************發(fā)送1幀數(shù)據(jù)**************************************/
void date_5603(void)
{
    unsigned char i;
    rest_Bit();
	Wokr_Bit();
	for(i=0;i<10;i++)
	{
	  send_data(0xfff);
	  send_data(0);
	  send_data(0);
    }
}
/*********************************main**************************************/
void main (void)
{
 while(1)
  {
   date_5603();    
  }
}

/*==================================結(jié)束=============================================*/ 
全部回復(fù)(5)
正序查看
倒序查看
gxg1122
LV.10
2
2017-11-01 13:00
樓主添加點(diǎn)注釋,這樣看的很費(fèi)勁。
0
回復(fù)
gxg1122
LV.10
3
2017-11-01 13:08
你這程序讀完后就是一直發(fā)送0xFFF------0x000----0x000----0xfff----0x000----0x000這樣的循環(huán),每次發(fā)送的數(shù)據(jù)都是12bit即3個(gè)字節(jié)。  你在看看你捕捉的對(duì)不對(duì)。
0
回復(fù)
松松man
LV.1
4
2017-11-01 15:41
@gxg1122
你這程序讀完后就是一直發(fā)送0xFFF------0x000----0x000----0xfff----0x000----0x000這樣的循環(huán),每次發(fā)送的數(shù)據(jù)都是12bit即3個(gè)字節(jié)。 你在看看你捕捉的對(duì)不對(duì)。
不對(duì)的,撲抓出來(lái)的不是這樣
0
回復(fù)
松松man
LV.1
5
2017-11-01 15:50
@gxg1122
你這程序讀完后就是一直發(fā)送0xFFF------0x000----0x000----0xfff----0x000----0x000這樣的循環(huán),每次發(fā)送的數(shù)據(jù)都是12bit即3個(gè)字節(jié)。 你在看看你捕捉的對(duì)不對(duì)。
我的12bit  這樣定義的對(duì)嗎,前面定義了個(gè)變量 bdate
0
回復(fù)
松松man
LV.1
6
2017-11-01 15:50
@gxg1122
樓主添加點(diǎn)注釋,這樣看的很費(fèi)勁。
好的 
0
回復(fù)
發(fā)