亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? yc.c

?? msp430為核心
?? C
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
#pragma language=extended

#include  <stdio.h>
#include <io430x14x.h>
#include <intrinsics.h>
#include <math.h>
#include <string.h>
#include  "yc.h"
#include  "yc1.h"

/*FLASH操作函數(shù)*/
void flash_init(void)
{
	FCTL2=FWKEY+FSSEL1+FN0;   			//時(shí)鐘源:SMCLK,不分頻
}

void flash_clear(INT16S *p)
{
	while((FCTL3&BUSY)==BUSY);
  FCTL1=FWKEY+ERASE;							//段擦除
  FCTL3=FWKEY;										//解鎖
	*p=0;                           //空寫
}

void flash_clear_byte(INT8U *p)
{
	while((FCTL3&BUSY)==BUSY);
  FCTL1=FWKEY+ERASE;							//段擦除
  FCTL3=FWKEY;										//解鎖
	*p=0;                           //空寫
}

void flash_wt_word(INT16S *p,INT16S value)
{
	while((FCTL3&BUSY)==BUSY);
  FCTL3=FWKEY;                    //解鎖
	FCTL1=FWKEY+WRT;                //編程
	*p=value;
  FCTL1=FWKEY;                    //不編程
  FCTL3=FWKEY+LOCK;								//閉鎖
  while((FCTL3&BUSY)==BUSY);
}

void flash_wt_byte(INT8U *p,INT8U value)
{
	while((FCTL3&BUSY)==BUSY);
  FCTL3=FWKEY;                    //解鎖
	FCTL1=FWKEY+WRT;                //編程
	*p=value;
  FCTL1=FWKEY;                    //不編程
  FCTL3=FWKEY+LOCK;								//閉鎖
  while((FCTL3&BUSY)==BUSY);
}
/*FLASH操作函數(shù)*/

INT8U sum_check(INT8U *check_data,INT8U len)
{
	INT16U v;
  INT8U i,sum;	
	v=0;
	for(i=0;i<len;i++)
	v+=*(check_data+i);
	sum=v&0xff;	
	sum=~sum+1;
	sum=sum&0x7f;
	sum=sum|0x40;
	return sum;
}

void word_to_byte(INT16S *p1,INT8U *p2,INT8U len)  
{
	INT8U 	i;
	INT16S v;
	
	for(i=0;i<len;i++)
	   {
	   	 v=*(p1+i);
		   *p2++=v & 0xFF;
		   *p2++=(v>>8) & 0xFF;
	   }
}

void byte_to_byte(INT8U *p1,INT8U *p2,INT8U len)  
{
	INT8U i;
	
	for(i=0;i<len;i++)
	   {*p2=*(p1+i);
		   *p2++;
	   }
}

void read_sys_factor(void)
{
	INT8U  i;
	INT16S *p;
	INT8U  *p1;

 p=(INT16S *)flash_addr_b;	
 for(i=0;i<16;i++)
    {kch[i]=*p;
     p++;
 	 }
 	 
 p1=(INT8U *)flash_addr_a;
 for(i=0;i<90;i++)
    {peizhi[i]=*p1;
     *p1++;
 	 }
 for(i=0;i<12;i++)
    phone[i]=peizhi[i];
    	 
 p_full=((INT16U)peizhi[13]<<8)+peizhi[12];
 p_alarm=((INT16U)peizhi[15]<<8)+peizhi[14];
 
 for(i=0;i<12;i++)
   server_certer[i]=peizhi[16+i];
   
 for(i=0;i<16;i++)
    dc_name[i]=peizhi[i+28];
   
 for(i=0;i<8;i++)
    sms_name[i]=peizhi[i+44];
    
 for(i=0;i<2;i++)
    sms_blank[i]=peizhi[i+52];   
   
 for(i=0;i<32;i++)
   yx_name[i]=peizhi[i+54];
   
 for(i=0;i<2;i++)
   dc1_mandu[i]=peizhi[i+86];

 for(i=0;i<2;i++)
   dc2_mandu[i]=peizhi[i+88];     
   	
 for(i=0;i<YX_BYTE_NUM;i++)
				yx_polarity[i]=0xfe;

 	 if(sms_blank[1]!=0)
	    sms_blank_flag=(sms_blank[0]-0x30)*10+(sms_blank[1]-0x30);
	 else
	 	sms_blank_flag=sms_blank[0]-0x30;
	
  if(((sms_blank[0]==0x00)&&(sms_blank[1]==0x00))||((sms_blank[0]==0xff)&&(sms_blank[1]==0xff))||((sms_blank[0]==0x30)&&(sms_blank[1]==0x30)))
 		   sms_blank_flag=2;
 		   
 sms_blank_flag_back=sms_blank_flag;

	my_id=P5IN & 0xf;
}

void com_write_mem(INT16U addr,INT8U *p,INT8U len)
{
	INT8U  i,n;
	INT16U temp;
	INT16S *p1;
	INT8U *p2;
		
	if (len>com_msg_byte) len=com_msg_byte;
	if (addr>=flash_addr_b&&addr<flash_addr_a)     /*模擬量通道系數(shù)區(qū)*/
				{
				for(i=0;i<16;i++)
								 kch_bak[i]=kch[i];

				 n=(addr-flash_addr_b)>>1;              //除2操作
				 len=len>>1;
				 for(i=0;i<len;i++)
								{
									temp=*(p+1);
								  kch_bak[n+i]=(temp<<8)+*p;
								  p=p+2;
								}

				 p1=(INT16S *)flash_addr_b;
				 __disable_interrupt();
				 WDTCTL = WDTPW + WDTHOLD;
				 flash_clear(p1);
				 p1=(INT16S *)flash_addr_b;
				 for(i=0;i<16;i++)
				    {
				    	flash_wt_word(p1,kch_bak[i]);
				      p1++;
				 		}
			   __enable_interrupt();

				 p1=(INT16S *)flash_addr_b;			
					for (i=0;i<16;i++)
									{
										if (*p1!=kch_bak[i])
													{
														wt_mem_err=0;
														i=16;
													}
										p1++;
									}
               
					if (wt_mem_err!=0)
								{
									wt_mem_err=0x55;
									for (i=0;i<16;i++)
											kch[i]=kch_bak[i];
								}
				}
	if (addr>=flash_addr_a&&addr<flash_addr_ab) /*電話號(hào)碼與站名區(qū) 12字節(jié)號(hào)碼 4字節(jié)的壓力設(shè)置12字節(jié)短信服務(wù)中心*/
				{
				for(i=0;i<90;i++)
								peizhi_bak[i]=peizhi[i];

				 n=addr-flash_addr_a;				 
				 for(i=0;i<len;i++)
								{
								 peizhi_bak[i+n]=*p++;								
								}

				 p2=(INT8U *)flash_addr_a;
				 
				 __disable_interrupt();
				 WDTCTL = WDTPW + WDTHOLD;
				 flash_clear_byte(p2);
				 p2=(INT8U *)flash_addr_a;
				 for(i=0;i<90;i++)
				    {
					    flash_wt_byte(p2,peizhi_bak[i]);
					    *p2++;
					    P3OUT^=0x08;      // P3.0=RUN(output),P3.3=WATCH_DOG(output)
				 	  }
				 	 __enable_interrupt();

				 p2=(INT8U *)flash_addr_a;		
				 for (i=0;i<90;i++)
						{
							if (*p2!=peizhi_bak[i])
										{
											wt_mem_err=0;
											i=90;
										}
							*p2++;
						}
               
				 if (wt_mem_err!=0)
						{
							wt_mem_err=0x55;
							for (i=0;i<12;i++)
							phone[i]=peizhi_bak[i];
							p_full=((INT16U)peizhi_bak[13]<<8)+peizhi_bak[12];
							p_alarm=((INT16U)peizhi_bak[15]<<8)+peizhi_bak[14];
							for(i=0;i<12;i++)
							server_certer[i]=peizhi_bak[16+i];
							for(i=0;i<16;i++)
							dc_name[i]=peizhi_bak[i+28];
							for(i=0;i<8;i++)
							sms_name[i]=peizhi_bak[i+44];
							for(i=0;i<2;i++)
							sms_blank[i]=peizhi_bak[i+52];
							for(i=0;i<32;i++)
							yx_name[i]=peizhi_bak[i+54];
							for(i=0;i<2;i++)
							dc1_mandu[i]=peizhi_bak[i+86];
							for(i=0;i<2;i++)
							dc2_mandu[i]=peizhi_bak[i+88];
						}
				}

read_sys_factor();
}

void delay(INT16U cnt) 
{INT16U k,i;  
	
	k=0; 
	for(i=0;i<cnt;i++)                          	
		  k++;  
}

INT16U PPPfcs16(INT8U *cp, INT16U len) 
{
  INT16U fcs;
  fcs=0xffff;
  while (len--)
    fcs=(fcs>>8)^fcstab[(fcs^(*cp++))&0xff];
  return (fcs);
}

INT8U  bittst(INT8U *p,INT16U n)
{   
  INT16U v;
  v= *p & bit1_tab[n];
  if (v!=0)	v= 0xff;
  return v;
}

void com_init(INT8U port)
{	

	memset(&com0_tx_buf[0],0,16);
	memset(&com0_rx_buf[0],0,16);
	
	memset(&com1_tx_buf[0],0,256);
	memset(&com1_rx_buf[0],0,128);
		
  com_rx_count[port]=0;
  com_tx_count[port]=0;
  com_tx_point[port]=0;
  com_rx_ok[port]=0;
  com_rx_time[port]=0;
  com_tx_time[port]=1000;
  				
  
  if (port==0)                  /*與變頻器通訊 4800 n 8 1*/
  {
    U0CTL&=~SWRST;
    U0CTL = CHAR+PENA;             //8-bit character
    U0TCTL=SSEL1;        				   //UCLK = SMCLK   
    U0BR0 = 0x82;                  //8M/4800 =1666.66
    U0BR1 = 0x06;                  //
    U0MCTL = 0x55;                 //modulation 01010101 
    ME1|=URXE0 +UTXE0;    				 //Enable USART0 TXD/RXD
    //IE1|=URXIE0+UTXIE0;          //Enable USART0 RX TX interrupt
    P3SEL|=0x30;									 //P3.4,5=USART0 TXD/RXD
    P3DIR|=0x10;									 //P3.4 OUTPUT
  }
  else if (port==1)             /* 與tc35i通訊或和掌上電腦通訊 4800 n 8 1*/
  {
    U1CTL&=~SWRST;
    U1CTL= CHAR;            			 //8-bit character 
    U1TCTL=SSEL1;        				   //UCLK = SMCLK   
    U1BR0 = 0x82;                  //8M/4800 =1666.66
    U1BR1 = 0x06;                  //
    U1MCTL = 0x55;                 //modulation 01010101 
    ME2|=URXE1 +UTXE1;    				 //Enable USART1 TXD/RXD
    //IE2|=URXIE1+UTXIE1;          //Enable USART1 RX TX interrupt
    P3SEL|=0xc0;									 //P3.6,7=USART1 TXD/RXD
    P3DIR|=0x40;									 //P3.6 OUTPUT
  }

}

void timerb_init(void)
{
	time_per=8000;
	TBCTL=TBSSEL1+TBCLR;     			//SMCLK, clear TBR,1分頻
  TBCCTL0=CCIE;                 //比較寄存器0中斷
  TBCCR0=time_per;							//T=0.625ms
  TBCTL|=MC0;                   //增計(jì)數(shù)模式
}

void adc12_init(void)
{
	ADC12CTL0&=~ENC;              //停止A/D轉(zhuǎn)換
//單通道單次采樣/轉(zhuǎn)換,信號(hào)源ADC12SC,采樣信號(hào)來(lái)自采樣定時(shí)器
// ADC12CTL0=ADC12ON+REF2_5V+REFON;	  														//開啟ADC內(nèi)核
 ADC12CTL0=ADC12ON+REF2_5V+REFON+SHT0_2+SHT0_1+SHT0_0;	          //開啟ADC內(nèi)核
 ADC12CTL1=ADC12SSEL1+SHP;																				//時(shí)鐘源MCLK
 ADC12IE=0;
 ADC12CTL0|=ENC;
}

void yc_init(void)
{
	INT8U  i;
	INT16S *p;
	
	p=&yc.DC[0];
	for(i=0;i<yc_words;i++)
				{
				 *p=0;
				 p++;
				}
				
	ad_point=0;
	
	fourier_flag=0;
	fourier_index=0;
  wt_mem_err=0x55;
}

void com_handle()
{
	INT8U cc;
	if ((IFG1&URXIFG0)==URXIFG0)
	{
		cc=U0RXBUF;
		com0_rx_buf[com_rx_count[0]]=cc;
		com_rx_count[0]=(com_rx_count[0]+1);
		com_rx_time[0]=50;
	}
	if (com_tx_count[0]>0 && ((IFG1 & UTXIFG0) == UTXIFG0))
	{
		U0TXBUF=com0_tx_buf[com_tx_point[0]++];
		com_tx_count[0]--;
	}

	if ((IFG2&URXIFG1)==URXIFG1)
	{
		cc=U1RXBUF;
		com1_rx_buf[com_rx_count[1]]=cc;
		com_rx_count[1]=(com_rx_count[1]+1);
		com_rx_time[1]=50;
	}
	if (com_tx_count[1]>0 && ((IFG2 & UTXIFG1) == UTXIFG1))
	{
		U1TXBUF=com1_tx_buf[com_tx_point[1]++];
		com_tx_count[1]--;
		if (com_tx_count[1]==0) com_tx_time[1]=200;
	}
}

void sms_init()
{
 gsmint_cnt=0;
 sms_send_flag=0;
 sms_wait_begin=0;
 sms_wait_time=0;
 sms_start=0;
 sms_at_flag=0;
 sms_state=0;
 poweroff_flag=0;
 begin_time=0;
 check_wait_time=0;
 poweroff=0;
 MainTxdGsmProcc=0;
 sms_check_flag=0;
 repeat_time=0;
 entry_time=0;
 tx_simlat=0;
 simlat_timer=0;
 }

void read_yx()
{
  INT8U i;
  
  yx_now[0]= P2IN;														//YX1-8
  
  for(i=0;i<YX_BYTE_NUM;i++)
    yx_now[i] ^=yx_polarity[i];	
}

void check_yx()
{INT8U i,j;
 INT16U k;

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一区在线观看网站| 日本亚洲视频在线| 一区二区视频免费在线观看| 亚洲精品美国一| 亚洲成人一区二区在线观看| 久久99国产精品免费网站| 国产a区久久久| 欧美无砖砖区免费| 日韩欧美精品在线| 国产精品成人午夜| 日韩1区2区3区| 成人激情免费网站| 欧美久久久久中文字幕| 久久久久久一二三区| 一区二区久久久| 国产精品中文欧美| 欧美日韩精品是欧美日韩精品| 精品国产三级a在线观看| 国产精品看片你懂得| 日韩国产欧美视频| 99久久久精品| 精品久久五月天| 亚洲国产一区二区a毛片| 国产毛片一区二区| 欧美日韩免费一区二区三区| 久久色中文字幕| 亚洲6080在线| 成人精品视频一区二区三区| 欧美乱妇一区二区三区不卡视频| 国产精品久久久一本精品 | 粉嫩13p一区二区三区| 欧美在线一二三四区| 久久婷婷一区二区三区| 日韩精品一二区| 91黄色小视频| 国产日产欧美精品一区二区三区| 人人狠狠综合久久亚洲| 色婷婷综合中文久久一本| 久久久久亚洲蜜桃| 日本中文字幕一区二区视频| 91黄色免费网站| 中文成人av在线| 激情图片小说一区| 91精品婷婷国产综合久久| 亚洲欧美色图小说| 国产成人av福利| 日韩精品自拍偷拍| 五月婷婷激情综合网| 色婷婷久久久久swag精品| 欧美国产日产图区| 精品一区二区三区免费播放| 欧美精品久久天天躁| 一级女性全黄久久生活片免费| 国产成人午夜视频| 欧美精品一区二| 久久国产精品第一页| 欧美理论电影在线| 亚洲永久精品大片| 欧洲一区二区三区免费视频| 《视频一区视频二区| 本田岬高潮一区二区三区| 日本一区二区高清| 国产+成+人+亚洲欧洲自线| 精品va天堂亚洲国产| 麻豆精品国产91久久久久久| 7777精品伊人久久久大香线蕉| 亚洲一区在线观看免费 | ●精品国产综合乱码久久久久| 粉嫩久久99精品久久久久久夜| 国产欧美日韩在线观看| 国产麻豆精品视频| 欧美激情一区二区三区蜜桃视频| 国产福利一区二区三区视频| 国产丝袜美腿一区二区三区| 国产iv一区二区三区| 中文在线一区二区| 不卡视频一二三| 国产精品精品国产色婷婷| 97久久精品人人做人人爽| 成人欧美一区二区三区黑人麻豆| 99精品视频一区二区三区| 中文字幕字幕中文在线中不卡视频| 不卡一区中文字幕| 日韩美女精品在线| 欧美系列一区二区| 日韩中文字幕一区二区三区| 日韩一区二区三区在线观看| 精品一区二区三区视频在线观看| 欧美va日韩va| 成熟亚洲日本毛茸茸凸凹| 国产精品久久一级| 在线观看成人小视频| 亚洲gay无套男同| 精品国产一区二区三区四区四| 国产激情一区二区三区桃花岛亚洲| 国产欧美日韩在线| 91高清在线观看| 青青草一区二区三区| 精品久久久久久久久久久院品网| 国产高清视频一区| 自拍偷拍亚洲综合| 欧美精品1区2区3区| 精品一区二区av| 中文字幕一区二区三区在线播放| 色999日韩国产欧美一区二区| 日韩精品色哟哟| 久久综合狠狠综合久久综合88| 成人久久18免费网站麻豆| 亚洲福利视频一区| 久久久综合视频| 一本到三区不卡视频| 奇米精品一区二区三区四区| 国产欧美一区二区三区网站 | 亚洲人成电影网站色mp4| 欧美电影一区二区三区| 国产成人亚洲综合a∨婷婷| 亚洲主播在线播放| 欧美白人最猛性xxxxx69交| 99久久免费国产| 秋霞电影网一区二区| 国产精品国产三级国产有无不卡| 欧美电影在线免费观看| 成人一区二区三区视频 | 91精品国产高清一区二区三区 | 精品少妇一区二区三区在线播放| 99久久99久久久精品齐齐| 日本va欧美va精品| 国产精品久久久久久久久免费樱桃| 欧美日本国产视频| 99久久99久久精品免费观看| 男人操女人的视频在线观看欧美| 亚洲欧洲韩国日本视频| 欧美大片免费久久精品三p| 91一区一区三区| 国产综合色在线| 亚洲成人av福利| 国产精品美女一区二区| 欧美一级在线免费| 91麻豆成人久久精品二区三区| 久久精品理论片| 亚洲国产视频在线| 国产精品美女视频| 日韩免费观看高清完整版| 日本道免费精品一区二区三区| 国产在线播放一区三区四| 五月天激情综合网| 中文字幕欧美一区| 久久精品日韩一区二区三区| 欧美一区二区三区系列电影| 色老汉一区二区三区| 国产aⅴ综合色| 国内久久精品视频| 天堂在线亚洲视频| 一区二区三区在线播| 中文字幕第一区综合| 久久午夜羞羞影院免费观看| 91精品国产福利在线观看 | 亚洲午夜免费福利视频| 国产精品久久久久久久久久久免费看 | 欧美午夜在线观看| 91丨九色丨蝌蚪丨老版| 成人一级片在线观看| 精品亚洲成av人在线观看| 日本伊人色综合网| 午夜影院久久久| 亚洲国产毛片aaaaa无费看| 亚洲欧美色图小说| 中文字幕在线不卡一区二区三区| 久久久久久毛片| 日韩精品影音先锋| 日韩欧美国产1| 欧美xxxxx牲另类人与| 555www色欧美视频| 3751色影院一区二区三区| 欧美亚洲高清一区| 欧美日精品一区视频| 欧美日韩久久久一区| 在线看国产一区| 色婷婷综合久久久久中文 | 亚洲一区精品在线| 亚洲一区二区三区视频在线播放 | 99久久婷婷国产精品综合| 成人综合婷婷国产精品久久蜜臀 | 亚洲人成网站精品片在线观看| 国产精品福利一区二区三区| 国产精品国产三级国产三级人妇| 中文字幕不卡在线观看| 国产精品久久三| 亚洲欧美日韩国产综合| 亚洲精品中文字幕乱码三区| 亚洲美女屁股眼交| 亚洲制服丝袜一区| 亚洲一区二区3| 视频一区二区三区中文字幕| 日本欧美一区二区三区| 久久成人免费日本黄色| 国内成人免费视频| 国产成人夜色高潮福利影视| 99久久精品免费| 欧美日韩久久久|