⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 卫星接受机控制卫星和LCD显示
💻 C
字号:
// This program shows how to work with ADC convertor
// Press Button 1 -> Send UART0 -> current temperature
// Press Button 2 -> Send UART0 -> current voltage on potentialometer

#define  __SYS__INIT__

#include "AT91SAM7S128.h"
#include "stdio.h"
#include "usart.h"
#include "adc.h"
#include "system.h"
#include "string.h"
#include "crc.h"
#include "vars.h"


extern AT91PS_PIO    m_pPio;
AT91PS_ADC    m_pADC   = AT91C_BASE_ADC;
AT91PS_RSTC   m_pRSTC  = AT91C_BASE_RSTC;

  unsigned long Alive_counter;
  
void Delay (unsigned long a) { while (--a!=0); }  // 延时函数

//unsigned char* CalcTemp(unsigned int temp);
//unsigned char* CalcVolt(unsigned int volt);
//unsigned char res[12];

unsigned char Alive_msg[3]={0x00,0x20,0x00};
unsigned char debug_msg[12]={0x03,0x09,0x0,0x04,0x00,0x00,0x11,0x00,0x01,0x02,0x03,0x04};

void init_rest()
{
  m_pRSTC->RSTC_RMR=0xa5000000+AT91C_RSTC_URSTEN+AT91C_RSTC_ERSTL;  //使能用户重启
}

void init_cfg()
{
   int i;
   for(i=0;i<MAX_CONF_NUM;i++)
   {
     v_cfg_data[i].no=CONF_NO[i];
     v_cfg_data[i].len=CONF_LEN[i];
   }
}

unsigned char recv_triger;  //for debug^^^^^^^^^^^^^^^^^for debug
int main() {
  unsigned int i;
  InitFrec();      // 系统初始化
  InitADC();
  InitUSART0();    // 串行口UART初始化
  InitPeriphery(); // 外围初始化
  init_rest();     //复位系统初始化
  init_cfg();
  while(1) {       // 主循环
    
   recv_msg();
   send_msg_USART0();
   if(Alive_counter++>600000)
   { 
     Alive_msg[2]=v_counter;
     load_msg(Alive_msg,3);
     //load_msg(debug_msg,12);
     v_counter++;
   }
   if(v_alarmsim_counter==0) 
   {
      v_alarm_sim[0]=0;
      v_alarm_sim[1]=0;
   }
   if(i++>20000)
   { i=0;
     recv_triger=1;
   }
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -