这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 企业专区 » Renesas » campozeng的进程帖★基于RL78/G13的双向信息监测传送系统项目总结

共104条 7/11 |‹ 5 6 7 8 9 10 ›| 跳转至
助工
2012-09-13 20:58:15     打赏
61楼
楼主 能不能提供这个呼吸灯的工程文件啊?

助工
2012-09-13 23:40:03     打赏
62楼
拿板凳学习。

菜鸟
2012-09-15 00:54:57     打赏
63楼
挺详细的,又学习了

工程师
2012-09-17 15:37:44     打赏
64楼

低功耗模式運行測試(HALT & STOP)

本次測試連接P70/KR0 和 P71/KR1至兩個輕觸開關,產生進入和退出低功耗模式運行。

功能:正常模式RL73/G13板上的D2點亮,HALT和STOP模式下D2滅。

可以用萬用表來測試各模式下運行的電流;

首先用Applilet生成基礎代碼,我用KR(鍵盤)中斷來喚醒中斷。

在CG_main.c文件定義以下寄存器作為模式的標志位

UCHAR SystemStatus;

在CG_userdefine.h文件定義以下宏

#define SYSTEM_STOP       3
#define SYSTEM_HALT       2
#define SYSTEM_ON         1

下面一點值得注意:

在設置P70/P71兩個IO  pull-high 不然功能不正常,Applilet生成的代碼里沒有設pull-high 

在CG_int.c這個文件的Key_Int這個函數里加入以下藍色代碼:
 /* Set KR0 pin */
 PM7 |= 0x01U;
  PU7 |= 0x01U;
 /* Set KR1 pin */
 PM7 |= 0x02U;
  PU7 |= 0x02U;

在CG_int_user.文件里頂部加入寄存器SystemStatus的聲明代碼:
extern UCHAR SystemStatus;

在CG_int_user.文件里寫按鍵中斷函數如下以便控制模式運行:

#pragma vector = INTKR_vect
__interrupt void MD_INTKR(void)
{
  /* Start user code. Do not edit comment generated here */
    if(P7_bit.no0==0)     //KR0
    {
         if(SystemStatus==SYSTEM_ON)
         {
            SystemStatus=SYSTEM_HALT;
         }
         else if(SystemStatus==SYSTEM_HALT)
         {
            SystemStatus=SYSTEM_ON;
         }
     }
     else if(P7_bit.no1==0) //KR1
     {
         if(SystemStatus==SYSTEM_ON)
         {
            SystemStatus=SYSTEM_STOP;
         }
         else if(SystemStatus==SYSTEM_STOP)
         {
            SystemStatus=SYSTEM_ON;
         }
     }

 /* End user code. Do not edit comment generated here */
}

寫一個簡單的main函數來進行測試:

void  main(void)
{
 /* Start user code. Do not edit comment generated here */
        __low_level_init();
        KEY_Enable();
        SystemStatus=SYSTEM_ON;
        PU7_bit.no7 = 1;
        PM7_bit.no7 = 0;
        P7_bit.no7=1;              //define the LED on RL78/G13 board
 while (1U)
 {
     if(SystemStatus==SYSTEM_ON)
            {
                P7_bit.no7=0;     //LED on
            }
            else
            {
                P7_bit.no7=1;     //LED off
                if(SystemStatus==SYSTEM_HALT)
                {
                    HALT();
                }
                else
                {
                    STOP();
                }
            }
 }
 /* End user code. Do not edit comment generated here */
}

本試驗代碼在下面鏈接下載:

低功耗模式運行測試(HALT & STOP)代碼


菜鸟
2012-09-19 21:38:39     打赏
65楼
学习了~~~

助工
2012-09-19 21:51:11     打赏
66楼
呼吸灯的代码能提供一载吗?

工程师
2012-09-20 10:45:10     打赏
67楼

無線信息雙向監控系統項目正式啟動

用到的RL78/G13 MCU的資源如下:

UART0:與GPS模塊進行通訊

UART2:與上位機進行通訊

Timer:LED控制、計時、外部信號測量

PWM:驅動蜂史鳴器,控制馬達

RTC:系統時間

AD:測量電壓、溫度、濕度

外部中斷:系統喚醒、

Data flash:斷電記憶數據

IO 驅動LCD:顯示數據

WDT

LVD




下面是Demo的圖片

GPS模塊用于定位終端的位置

LCD模塊用于顯示系統信息、菜單、接收到的公告信息

USB用于與上位機交換數據

2.4G RF模塊用于與附件其它終端交換信息


助工
2012-10-06 11:46:12     打赏
68楼
楼主太强大了~~~

工程师
2012-10-08 11:37:01     打赏
69楼
由於放了長期,很久沒更新了。

我的上位機程序也做得差不多了。

下面展示一下給大家看看:

1、首先用RL78/G13 板做了一個終端,可以用于收發其它終端的信息及各種數據:


2、由於我做的無線信息收發系統,我用另一塊板做了另一個終端用于測試:


3.通過上位機發送信息,則無線網絡範圍內的所有終端均可收到信息:


4.收到信息的終終端如果連接上位機,也會將信息上報至上位機:


5.上位機不僅可以收發隨意發送的信息,也將監測所有終端的各種數據,下面是附近終端的溫度數據:




6.系統特有的一鍵時間同步功能,如下圖,如果點一下“Sync Time”,剛所有接入網絡的終端將會同步時間:


7.系統特有的馬達控制功能(Motor Control),因為有的終端會帶有攝像頭,可以用此功能控制攝像頭的方向。


8.通過此系統,可以發送信息通知終端持有者,如發信息給他,“回辦公室”:


9.終端持有者也可以私聊,將信息發至指定用戶,就像QQ一樣,可以自由聊天。

更多功能就不一一描述了。


菜鸟
2012-10-09 08:45:17     打赏
70楼
努力学习中。

共104条 7/11 |‹ 5 6 7 8 9 10 ›| 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]