More Related Content Similar to Led blinking using TMS320C6745 (20) More from Pantech ProLabs India Pvt Ltd (20) Led blinking using TMS320C67452. Technology beyond the Dreams™ Copyright © 2014 Pantech Prolabs India Pvt Ltd.
Features of GPIO
The GPIO peripheral consists of the following
features
• Separate input/output registers
• All GPIO signals can be used as interrupt sources
• All GPIO signals can be used to generate events
to the EDMA.
6. Technology beyond the Dreams™ Copyright © 2014 Pantech Prolabs India Pvt Ltd.
GPIO Direction Registers (DIRn)
By default, all the GPIO pins are configured as inputs
(bit value = 1)
1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
F 0 0 0
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
F F F F
0xF000FFFF
7. Technology beyond the Dreams™ Copyright © 2014 Pantech Prolabs India Pvt Ltd.
GPIO Output Data Registers
(OUT_DATAn)
0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
0 F F F
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0
0x0FFF0000
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0
0x00000000
8. Technology beyond the Dreams™ Copyright © 2014 Pantech Prolabs India Pvt Ltd.
STEPS FOR LED BLINKING
Declare two pointer variables for GPIO Direction register
and GPIO Data Register
Set Byte Address for GPIO Direction register and GPIO Data
Register
Configure GPIO as output in GPIO Direction Register
Configure Required Blinking data in GPIO Data Register
9. Technology beyond the Dreams™ Copyright © 2014 Pantech Prolabs India Pvt Ltd.
Set Base Address
• gpio_dir01 = (Uint32 *)0x01E26010;
• gpio_out_data01 = (Uint32 *)0x01E26014;
Configure Direction register as Output
*gpio_dir01 = 0xF000FFFF;
Configure Data register as Output
*gpio_out_data01 = 0x0FFF0000;
10. Technology beyond the Dreams™ Copyright © 2014 Pantech Prolabs India Pvt Ltd.
Program
#define Uint32 unsigned int
void DelayMs(Uint32 Ms);
void main()
{
Uint32 *gpio_dir01,*gpio_out_data01;
gpio_dir01 = (Uint32 *)0x01E26010;
gpio_out_data01 = (Uint32 *)0x01E26014;
*gpio_dir01 = 0xF000FFFF;
while(1)
{
*gpio_out_data01 = 0x0FFF0000;
DelayMs(100);
*gpio_out_data01 = 0x00000000;
DelayMs(100);
}
}
void DelayMs(Uint32 Ms)
{
Uint32 i;
while(Ms>0)
{
for(i=0;i<300000;i++);
Ms--;
}
}
12. Technology beyond the Dreams™ Copyright © 2014 Pantech Prolabs India Pvt Ltd.
GPIO Input Data Registers (IN_DATAn)
13. Technology beyond the Dreams™ Copyright © 2014 Pantech Prolabs India Pvt Ltd.
Program
#define Uint32 unsigned int
Uint32 Value,i;
void DelayMs(Uint32 Ms);
void main()
{
Uint32 *gpio_in_data01,*gpio_out_data01,*gpio_dir01;
gpio_in_data01 = (Uint32 *)0x01E26020;
gpio_dir01 = (Uint32 *)0x01E26010;
gpio_out_data01 = (Uint32 *)0x01E26014;
*gpio_dir01 = 0xF000FFFF;
while(1)
{
Value = *gpio_in_data01;
*gpio_out_data01 = Value<<16;
DelayMs(100);
}
}
void DelayMs(Uint32 Ms)
{
Uint32 i;
while(Ms>0)
{
for(i=0;i<30000;i++);
Ms--;
}
}
15. Technology beyond the Dreams™ Copyright © 2014 Pantech Prolabs India Pvt Ltd.
For more details
– www.pantechsolutions.net
– http://www.slideshare.net/pantechsolutions
– http://www.scribd.com/pantechsolutions
– http://www.youtube.com/pantechsolutions