• 大小: 377KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-15
  • 语言: 其他
  • 标签: PIC16LF1829  

资源简介

PIC16LF1829示例程序,含串口、SPI、I2C,中断设置等程序,适合初学者学习

资源截图

代码片段和文件信息

//#include 
//#include 
#include “command_com.h“

UINT8 strGroup[4][10];
UINT8 front=0;

UINT16 AD_convert(UINT8 AN)
{

 union adres
            {
             UINT16 i;
             UINT8 a[2];
            }adresult;//?????ADRESH.ADRESL

 UINT16 adsum=0;
 UINT8 j;

 ADON=1;//??ADC??
 for(j=0;j<10;j++)
      {
       asm(“nop“);
       asm(“nop“);
       asm(“nop“);
       asm(“nop“);
       asm(“nop“);
       asm(“nop“);
       asm(“nop“);
       asm(“nop“);
       asm(“nop“);
       asm(“nop“);
       asm(“nop“);
       asm(“nop“);
       asm(“nop“);
       asm(“nop“);
       asm(“nop“);
       asm(“nop“);
       asm(“nop“);
       asm(“nop“);
       asm(“nop“);
       asm(“nop“);
       GO_nDONE = 1;//??ADC????
       asm(“nop“);
       asm(“nop“);
       while(GO_nDONE){}
       adresult.a[0]=ADRESL;
       adresult.a[1]=ADRESH;

       adsum+=adresult.i;//A/D????
      }
 ADON=0;//??????ADC
 adsum = adsum/10;

 return adsum;//??A/D10????adsum
}

static UINT8 disposeInputString(UINT8* inputString)
{
    UINT8  bReturn = 1;

    UINT8  ijj= 0;
    UINT8  endGroup = 0;

    for (i = 0; i < 4; i++)
    {
      for (UINT8  k = 0; k < 10; k++ )
        strGroup[i][k] = ‘\0‘;
    }

    i = 0;
    jj = 0;

    while(*inputString)
    {
      if(*inputString == ‘ ‘)//????????????
      {
          inputString++;
          i++;
          jj = 0;

          if (i >= 4)//????????????while
          {
            bReturn = 0;
            break;
          }
          if (*inputString != 0x0A && *inputString != 0x0D)//???????????????????
          {
            strGroup[i][jj] = *inputString;
            jj++;
          }
          inputString++;
      }
      else//??????????????????????
      {
        if(jj < 10 && *inputString != 0x0A && *inputString != 0x0D)
        {
          strGroup[i][jj] = *inputString;
          jj++;
        }

        if (jj >= 10)
          bReturn = 0;

        inputString++;
      }
    }

    return bReturn;

}


static char MT_toupper(char ch)
{
  if (ch>0x60 && ch<0x7B)
  {
    ch -= 0x20;
  }

  return ch;
}

void MT_strcpy(char * strDestination const char * strSource)
{
  while (*strSource != ‘\0‘)
  {
    *strDestination++ = *strSource++;
  }

  *strDestination = *strSource;
}

UINT8 pop_front()
{
    UINT8 rValue = PC_RDATA[front];
//queue[front] = 0;
front++;
return rValue;
}

UINT8 isEmpty()
{
if(0!=front && front==Size_RD)//?????front??0???Size_RD?????????get?command?????1
    return 1;
else
    return 0;

}

void getCommand(char* commandString) //????command??????*commandString
{
    unsigned char lastChar = 0x00;
    unsigned char charCounter = 0;

    while(!isEmpty() && lastChar != 0x0D && charCounter < 50)
    {
       charCounter++;
       *commandString = pop_front();
       lastChar = *commandString;
       commandString++;
    }
    *commandString = ‘\0‘;
}

/** Send string by uart
 */
void sendPrintString(const char* stringBuffer)
{
    while(*stringBuffer)
    {
      TXREG

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        271  2013-10-12 21:52  simulator.X\build\default\debug\command_com.dep

     文件     225637  2013-10-12 21:52  simulator.X\build\default\debug\command_com.p1

     文件         57  2013-10-12 21:52  simulator.X\build\default\debug\command_com.p1.d

     文件      59905  2013-10-12 21:52  simulator.X\build\default\debug\command_com.pre

     文件        517  2013-10-12 21:52  simulator.X\build\default\debug\main.dep

     文件     207490  2013-10-12 21:52  simulator.X\build\default\debug\main.p1

     文件         50  2013-10-12 21:52  simulator.X\build\default\debug\main.p1.d

     文件      59982  2013-10-12 21:52  simulator.X\build\default\debug\main.pre

     文件        271  2013-10-12 21:50  simulator.X\build\default\production\command_com.dep

     文件     225637  2013-10-12 21:50  simulator.X\build\default\production\command_com.p1

     文件         62  2013-10-12 21:50  simulator.X\build\default\production\command_com.p1.d

     文件      59905  2013-10-12 21:50  simulator.X\build\default\production\command_com.pre

     文件        517  2013-10-12 21:48  simulator.X\build\default\production\main.dep

     文件     207490  2013-10-12 21:48  simulator.X\build\default\production\main.p1

     文件         55  2013-10-12 21:48  simulator.X\build\default\production\main.p1.d

     文件      59982  2013-10-12 21:48  simulator.X\build\default\production\main.pre

     文件        517  2013-10-04 13:04  simulator.X\build\default\production\newmain.dep

     文件     207752  2013-10-04 13:04  simulator.X\build\default\production\newmain.p1

     文件         58  2013-10-04 13:04  simulator.X\build\default\production\newmain.p1.d

     文件      59958  2013-10-04 13:04  simulator.X\build\default\production\newmain.pre

     文件       7225  2013-10-12 21:50  simulator.X\command_com.c

     文件       1181  2013-10-11 21:53  simulator.X\command_com.h

     文件      39871  2013-10-12 21:52  simulator.X\dist\default\debug\simulator.X.debug.cof

     文件       3626  2013-10-12 21:52  simulator.X\dist\default\debug\simulator.X.debug.hxl

     文件     198700  2013-10-12 21:52  simulator.X\dist\default\debug\simulator.X.debug.lst

     文件      42477  2013-10-12 21:52  simulator.X\dist\default\debug\simulator.X.debug.map

     文件      34134  2013-10-12 21:52  simulator.X\dist\default\debug\simulator.X.debug.obj

     文件     269833  2013-10-12 21:52  simulator.X\dist\default\debug\simulator.X.debug.rlf

     文件      85992  2013-10-12 21:52  simulator.X\dist\default\debug\simulator.X.debug.sdb

     文件      14659  2013-10-12 21:52  simulator.X\dist\default\debug\simulator.X.debug.sym

............此处省略38个文件信息

评论

共有 条评论

相关资源