void UART_Putc(char c)

{

    if (c == '\n')

  *(unsigned int *)(UART0_ADDR  + 0X00) =  '\r';

    delay_x(0x800);

 *(unsigned int *)(UART0_ADDR  + 0X00) = c;

 

}

unsigned int val_i=0;

void UART_Print(const char *str,...)

{

    va_list unnamed_p;

    char *sval;

    unsigned int tmp=0;

    va_start( unnamed_p, str);

while (*str)

 {

     //

     if(*str=='%')

     {

       switch(*++str)

       {

           case 'd'://输出十进制

               break;

           case 'c'://输出字符

               break;

           case 's'://输出字符串

               for(sval = va_arg(unnamed_p,char*);*sval;sval++)

               {

                   UART_Putc(*sval);

               }

               str++;

               break;

           case 'X'://输出16十进制

           case 'x'://输出16十进制

               val_i = va_arg(unnamed_p,unsigned int);

               //

               UART_Putc('0');delay_x(0X800);

               UART_Putc('x');delay_x(0X800);

               for(i=0;i<8;i++)

               {

                   delay_x(0X800);

                   tmp = val_i>>(4*(7-i));

                   val_i = val_i&(~(0xff<<(4*(7-i))));

                   //

                   if(tmp<10)

                       UART_Putc('0'+tmp);

                   else

                       UART_Putc('A'+tmp-10);

                   //

               }

               //

               str++;

               break;

          default://输出字符

               break;

         

       }

     }

     //

  UART_Putc(*str++);

  

 }

}

最新文章

  1. JavaScript权威指南 - 数组
  2. postgresql 设置只读用户
  3. 通过SQL Server 2008数据库复制实现数据库同步备份
  4. LightOJ Beginners Problems 部分题解
  5. 【leetcode】Rotate Image(middle)
  6. CART:分类与回归树
  7. Effective C++笔记:构造/析构/赋值运算
  8. android 开发工具(android studio)
  9. 近期十大优秀jQuery插件推荐
  10. 记录一次linux线上服务器被黑事件
  11. js+css3 动画数字累加
  12. Moderate 加入空格使得可辨别单词数量最多 @CareerCup
  13. 【转】CodeGear RAD 2007 SP4
  14. 在android中,如何去掉webview读取网页后点击网页上的按钮出现的方框
  15. .35-浅析webpack源码之babel-loader入口文件路径读取
  16. 非正则表达式检验邮箱格式是否合法(Java代码实现)
  17. phpcms栏目点击选中
  18. git 的安装及使用
  19. Tomcat定义虚拟主机案例
  20. 模仿jQuery的ajax的封装

热门文章

  1. Asp.net Core 入门实战 2.请求流程
  2. Sql Server的艺术(五) SQL UNION与UNION JOIN运算符
  3. Python函数可变参数*args及**kwargs详解
  4. 实现兼容document.querySelector的方法
  5. 01_Linux安装
  6. 多线程编程学习笔记——编写一个异步的HTTP服务器和客户端
  7. python 列表操作方法详解
  8. Eclipse EE遇到问题记录
  9. 使用最小堆优化Dijkstra算法
  10. 51Nod 欢乐手速场1 C 开心的小Q[莫比乌斯函数]