登录 免费注册 首页 | 行业黑名单 | 帮助
维库电子市场网
技术交流 | 电路欣赏 | 工控天地 | 数字广电 | 通信技术 | 电源技术 | 测控之家 | EMC技术 | ARM技术 | EDA技术 | PCB技术 | 嵌入式系统
驱动编程 | 集成电路 | 器件替换 | 模拟技术 | 新手园地 | 单 片 机 | DSP技术 | MCU技术 | IC 设计 | IC 产业 | CAN-bus/DeviceNe

DSPIC30f系列单片机人机对话LCD,LED,UART等源码

作者:二月之窗 栏目:单片机
DSPIC30f系列单片机人机对话LCD,LED,UART等源码

本人长期从事电源设计,在DSPIC30f应用上也走过很多弯路,特提供原码一份,给弟弟妹妹们.祝福早日成功!
/*;------------------------------------------------------------------------------
; UART-PC DISPLAY routines for Lab 4 and 5
;------------------------------------------------------------------------------
*/
        #include <p30f6011.h>
        #include "UART_DISPLAY.h"

//;Initialize UART PORT to communicate with the PC for DISPLAY

void UART_DISPLAY_Setup(void){
        U1MODE = 0xA000;     // Enable UART, 8 bits, 1 stop, no parity
        U1STA = 0x8400;     // Enable transmitter, RECEIVER, normal modes
        U1BRG = (unsigned int)(((unsigned LONG)OSCILLATOR/(16*(unsigned LONG)BAUD_RATE))-1);
        }

/* ;------------------------------------------------------------------------------
;Write array contents to PC through UART
*/

void UART_DISPLAY(unsigned int num_bytes,int *array_ptr[]){
        unsigned int i = 0, k;
        unsigned CHAR j;
//        UART_PutChar(0);                    // Send out start of packet delimiter
//        UART_PutChar(num_bytes);            // Send out the NUMBER of bytes in the array
//        UART_PutChar(num_bytes>>8);
        while(i < num_bytes){
            j = (unsigned CHAR)array_ptr[i++];
            if(j == 0)
                j = 1;
            UART_PutChar(j);
            }
        k = 12500;
        while(k--);                    // Delay for 50 mS
        }

void UART_PutChar(unsigned CHAR i){
    while(U1STAbits.UTXBF);        // Spin LOCK waiting for buffer to be empty
    U1TXREG = i;                // Send CHARacter
    }
;*************************************************************8
/*;------------------------------------------------------------------------------
; LCD DISPLAY routines for Lab 5/6
;------------------------------------------------------------------------------
*/
        #include <p30f6014a2.h>
        #include "LCD_DISPLAY.h"

//;Initialize SPI PORT to communicate with the LCD DISPLAY

void LCD_DISPLAY_Setup(void){
        LATGbits.LATG9 = 1;     // Set SPI slave SELECT pin high
        TRISGbits.TRISG9 = 0;    // and set as OUTPUT
        SPI2CON = 0x003c;        // Load SPI CONTROL register with MASTER mode, Clk = Fosc/64, Input data sampled at middle of OUTPUT time, Data cLOCKed out on rising edge, Clk idle is low
        SPI2STAT = 0x8000;         // Enable SPI PORT
        }

/* ;------------------------------------------------------------------------------
;Clear a column at X=W10 of the DISPLAY
*/

void LCD_DISPLAY_ClrCol(unsigned CHAR x){
        unsigned CHAR counter;
        counter = 32;            // Load counter to clear pixel 32 times
        while(counter > 0){
        LCD_DISPLAY_Byte(0xd9);        // Load command to clear a pixel, Call routine to send the command to the DISPLAY
        LCD_DISPLAY_Byte(x);         // Load X location of pixel, Call routine to send the command to the DISPLAY
        LCD_DISPLAY_Byte(counter--);     // Load Y location of pixel, Call routine to send the command to the DISPLAY
        }
}
        
/* ;------------------------------------------------------------------------------
;DISPLAY a pixel at X=W10 and Y=W11
*/

void LCD_DISPLAY_Pixel(unsigned CHAR x,unsigned CHAR y){
        LCD_DISPLAY_Byte(0xd8);        // Load command to set a pixel, Call routine to send the command to the DISPLAY
        LCD_DISPLAY_Byte(x);        // Load X location of pixel, Call routine to send the command to the DISPLAY
        LCD_DISPLAY_Byte(y);        // Load Y location of pixel, Call routine to send the command to the DISPLAY
        }

/* ;------------------------------------------------------------------------------
;Send W0 byte to LCD
*/

void LCD_DISPLAY_Byte(unsigned CHAR VALUE){
        unsigned int junk;
        LATGbits.LATG9 = 1;        // Set slave SELECT high
        LATGbits.LATG9 = 0;        // Set slave SELECT low for new transmission
        junk = SPI2BUF;            // Read buffer to avoid overflow
        SPI2BUF = VALUE;        // Write the data to the OUTPUT buffer
        while(!SPI2STATbits.SPIRBF); // Check if transmission complete
        }

void LCD_DISPLAY_array(int *array_ptr[]){
    unsigned CHAR j,k;
    for (k=0; k<122; k++)
               {
               j = (unsigned CHAR)array_ptr[k]/8;
           &nb
2楼: >>参与讨论
chencj13
做过逆变电源吗?
 
3楼: >>参与讨论
violit
好同志!!!坚决顶起!!
我也在学dspic

4楼: >>参与讨论
二月之窗
回复 PIC
我就是做电源的
用过2010做光伏逆变。有一论文发表!

5楼: >>参与讨论
zhouyh
你的代码很好,正学DSPIC30F能发一份到ZSE-MAIL@163.COM吗?先谢谢
 
6楼: >>参与讨论
querli_wjh
谢谢
能不能发一份到我的信箱:querli_wjh@163.com

7楼: >>参与讨论
ymy
雷锋同志
雷锋同志

8楼: >>参与讨论
liu131365
给我一份吧,3X
多谢了,我也在搞dspic30f

xiaomingge@gmail.com




9楼: >>参与讨论
crazykid
也给我一份吧
发给我一份好吗,谢谢啦!
ckxmd@126.com

10楼: >>参与讨论
zzhong_hy
也给我一份学习学习
楼主,给我一份学习学习,zzhong_hy@163.com

11楼: >>参与讨论
powerking
二月大侠请发份代码给我吧
好好学习
tonyliu168@163.com

* - 本贴最后修改时间:2006-6-6 10:35:48 修改者:powerking

12楼: >>参与讨论
TROYE
我也想要,好好学习一下

我也想要一份好好学习一下

liuzhidongcn@163.com

多谢!

13楼: >>参与讨论
PeterAmy
也发给我一份吧,谢谢
qiuiahua5599@sohu.com

14楼: >>参与讨论
tech116
各位,要隔离电源可别忘了我啊,部分隔离电源上传。
现货库存,全新原装,价格优惠!
联系方式:0755-21166981    ggxx123@tom.com   高勋
型号如下:
定电压输入、定电压双输出,功率1W, 隔离电压1000VDC, SIP7封装。
A0303S-1W     A0305S-1W    A0309S-1W    A0312S-1W    A0315S-1W   A0318S-1W   A0324S-1W
A0503S-1W     A0505S-1W    A0509S-1W    A0512S-1W    A0515S-1W   A0518S-1W   A0524S-1W
A0903S-1W     A0905S-1W    A0909S-1W    A0912S-1W    A0915S-1W   A0918S-1W   A0924S-1W
A1203S-1W     A1205S-1W    A1209S-1W    A1212S-1W    A1215S-1W   A1218S-1W   A1224S-1W
A1503S-1W     A1505S-1W    A1509S-1W    A1512S-1W    A1515S-1W   A1518S-1W   A1524S-1W
A1803S-1W     A1805S-1W    A1809S-1W    A1812S-1W    A1815S-1W   A1818S-1W   A1824S-1W
A2403S-1W     A2405S-1W    A2409S-1W    A2412S-1W    A2415S-1W   A2418S-1W   A2424S-1W

定电压输入、定电压双输出,功率2W, 隔离电压1000VDC, SIP7封装。
A0303S-2W     A0305S-2W    A0309S-2W    A0312S-2W    A0315S-2W   A0318S-2W   A0324S-2W
A0503S-2W     A0505S-2W    A0509S-2W    A0512S-2W    A0515S-2W   A0518S-2W   A0524S-2W
A0903S-2W     A0905S-2W    A0909S-2W    A0912S-2W    A0915S-2W   A0918S-2W   A0924S-2W
A1203S-2W     A1205S-2W    A1209S-2W    A1212S-2W    A1215S-2W   A1218S-2W   A1224S-2W
A1503S-2W     A1505S-2W    A1509S-2W    A1512S-2W    A1515S-2W   A1518S-2W   A1524S-2W
A1803S-2W     A1805S-2W    A1809S-2W    A1812S-2W    A1815S-2W   A1818S-2W   A1824S-2W
A2403S-2W     A2405S-2W    A2409S-2W    A2412S-2W    A2415S-2W   A2418S-2W   A2424S-2W

定电压输入、定电压双输出,功率3W, 隔离电压1000VDC, SIP8封装。
A0303S-3W     A0305S-3W    A0309S-3W    A0312S-3W    A0315S-3W   A0318S-3W   A0324S-3W
A0503S-3W     A0505S-3W    A0509S-3W    A0512S-3W    A0515S-3W   A0518S-3W   A0524S-3W
A0903S-3W     A0905S-3W    A0909S-3W    A0912S-3W    A0915S-3W   A0918S-3W   A0924S-3W
A1203S-3W     A1205S-3W    A1209S-3W    A1212S-3W    A1215S-3W   A1218S-3W   A1224S-3W
A1503S-3W     A1505S-3W    A1509S-3W    A1512S-3W    A1515S-3W   A1518S-3W   A1524S-3W
A1803S-3W     A1805S-3W    A1809S-3W    A1812S-3W    A1815S-3W   A1818S-3W   A1824S-3W
A2403S-3W     A2405S-3W    A2409S-3W    A2412S-3W    A2415S-3W   A2418S-3W   A2424S-3W

定电压输入、定电压双输出,功率5W, 隔离电压1000VDC, SIP8封装。
A0303S-5W     A0305S-5W    A0309S-5W    A0312S-5W    A0315S-5W   A0318S-5W   A0324S-5W
A0503S-5W     A0505S-5W    A0509S-5W    A0512S-5W    A0515S-5W   A0518S-5W   A0524S-5W
A0903S-5W     A0905S-5W    A0909S-5W    A0912S-5W    A0915S-5W   A0918S-5W   A0924S-5W
A1203S-5W     A1205S-5W    A1209S-5W    A1212S-5W    A1215S-5W   A1218S-5W   A1224S-5W
A1503S-5W     A1505S-5W    A1509S-5W    A1512S-5W    A1515S-5W   A1518S-5W   A1524S-5W
A1803S-5W     A1805S-5W    A1809S-5W    A1812S-5W    A1815S-5W   A1818S-5W   A1824S-5W
A2403S-5W     A2405S-5W    A2409S-5W    A2412S-5W    A2415S-5W   A2418S-5W   A2424S-5W


定电压输入、定电压双输出,功率1W, 隔离电压1000VDC, DIP14封装。
A0303D-1W     A0305D-1W    A0309D-1W    A0312D-1W    A0315D-1W   A0318D-1W   A0324D-1W
A0503D-1W     A0505D-1W    A0509D-1W    A0512D-1W    A0515D-1W   A0518D-1W   A0524D-1W
A0903D-1W     A0905D-1W    A0909D-1W    A0912D-1W    A0915D-1W   A0918D-1W   A0924D-1W
A1203D-1W     A1205D-1W    A1209D-1W    A1212D-1W    A1215D-1W   A1218D-1W   A1224D-1W
A1503D-1W     A1505D-1W    A1509D-1W    A1512D-1W    A1515D-1W   A1518D-1W   A1524D-1W
A1803D-1W     A1805D-1W    A1809D-1W    A1812D-1W    A1815D-1W   A1818D-1W   A1824D-1W
A2403D-1W     A2405D-1W    A2409D-1W    A2412D-1W    A2415D-1W   A2418D-1W   A2424D-1W

定电压输入、定电压双输出,功率2W, 隔离电压1000VDC, DIP14封装。
A0303D-2W     A0305D-2W    A0309D-2W    A0312D-2W    A0315D-2W   A0318D-2W   A0324D-2W
A0503D-2W &
15楼: >>参与讨论
gaohaiyan
我对DSP很感兴趣 ,目前正想学,能给我一份吗?
mail:gaopetrel@163.com

16楼: >>参与讨论
lh9865
如果可以的话,我也想要一份,谢谢了
mail:lh9865@sohu.com

17楼: >>参与讨论
单片机电源
我对DSP很有兴趣!能给我发一分吗?多谢了!:)
顶!顶!顶!
邮箱:quxiaofang2005@126.com

18楼: >>参与讨论
thankw
谢谢可以给我一份吗 --- thankw@sohu.com
谢谢,可以给我一份吗?thankw@sohu.com

19楼: >>参与讨论
yangzq
谢谢
邮箱:yzq2002cn2002@yahoo.com


20楼: >>参与讨论
chjman
给我一份好吗,谢谢!----chj119@sohu.com
 
21楼: >>参与讨论
lsh001
刚开始接触DSPIC30f,太需要了
请给我发一份,shunhua99@yahoo.com.cn

22楼: >>参与讨论
yangzq
谢谢
谢谢

俺上边的邮箱写错了,重来!给楼主添麻烦了。

邮箱:yzq2002cn@yahoo.com




23楼: >>参与讨论
dbh7024
请发给我一份行么?
dbhfree@126.com

24楼: >>参与讨论
kaxint
利害
没有想世上还有这样的好人

25楼: >>参与讨论
yuwen037
也给我一份吧,51转PIC真的感觉很不容易呀,谢了
也给我一份吧,换工作了,将51转PIC真的感觉很不容易呀,谢了
邮箱:g_yuwen_037@163.com

26楼: >>参与讨论
lizhe1024
谢谢了,我也想要一份!··
我刚接触DSPIC30F系列!不是很了解!我想问一下想让DSPIC30F5011单片机CAN通讯,怎么办啊!我用KPCI-8110光隔非智能CAN总线通讯卡连82c250can收发器,再连单片机!

27楼: >>参与讨论
5518604
雷锋无私奉献啊,值得学习
顶起,给我一份吧,先谢啦

28楼: >>参与讨论
haozhengzh
求取代码
你好:
     我最近也在学习dsPIC,苦于没有找到合适的例子,今天看到你这个代码非常的高兴,如果可以的话,给我也发一份。在这谢谢了

29楼: >>参与讨论
zxl8103
好东东,置顶!
正在寻求原码,太感谢了,能发给我一份吗?

30楼: >>参与讨论
tt163
好东西  能发一份给我吗?hftt163@163.com
好东西
能发一份给我吗?hftt163@163.com
thanks

31楼: >>参与讨论
li3
谢谢,请发一份.
 
32楼: >>参与讨论
wxwxian
也给我一份吧
 
33楼: >>参与讨论
youhu520
兄弟!你太好拉!给我一份好吗?
兄弟!
很高兴能看到你的留言.
我是一个刚从学校毕业的
我现在在深圳
找到工作不久.
也是从事电源这一块的
我想你的这份资料能对我学习和提高自己有很大的帮助.
能给我一份好吗?


34楼: >>参与讨论
ylc1108
谢谢可以给我一份吗? --ylc1108@yahoo.com.tw
谢谢可以给我一份吗? --ylc1108@yahoo.com.tw

35楼: >>参与讨论
dianji002
兄弟,先谢谢你了,给我传一份好吧
 
36楼: >>参与讨论
gwf_mcu
兄弟传给我一份吧,gwf1981sohu.com
兄弟传给我一份吧,gwf1981@sohu.com谢谢了,我很需要真是雪中送碳呀

37楼: >>参与讨论
Troye
能给我一份吗?
你好!
我刚准备开始用 DSPIC30F4013 ,上网找资料时看到了你的帖子。
能给我一份源码吗?

liuzhidongcn@163.com

多谢!

38楼: >>参与讨论
schen568
好兄弟,给我一份,谢了
 
39楼: >>参与讨论
haller246
高手给我一份
guoyanpeng123@yahoo.com.cn
顶了!!!!

40楼: >>参与讨论
二月之窗
我先在在混笔记
    我先在在混笔记
wind-solar.21ic.org
欢迎到我的新田地里讨论新能源问题.里面我为大家准备很多珍贵的资料.
希望大家支持啊

41楼: >>参与讨论
nike.com
我想要关于STC控制LED达到跑马灯效果的程序
我想要关于STC控制LED达到跑马灯效果的程序,谢谢。拜托。急。

42楼: >>参与讨论
cathryn
我想要一份,谢谢,我的邮箱zhanglina0131@163.com
 
43楼: >>参与讨论
sunskylu

能给我也发一份吗??非常感谢啊? 

sunskylu@tom.com

44楼: >>参与讨论
sunskylu

顺便还想问一句,请问你有LCD_Display.h这个头文件不?能不能麻烦你把它也给我那?非常感谢哦!

sunskylu@tom.com

参与讨论
昵称:
讨论内容:
 
 
相关帖子
初学PIC
PIC单片机型号后缀带4AP是啥意思?
关于PIC USB接口的问题
请教:16f88x的ra4内部结构
pic16f877aD的AD
免费注册为维库电子开发网会员,参与电子工程师社区讨论,点此进入


Copyright © 1998-2006 www.dzsc.com 浙ICP证030469号