Difference between revisions of "ECE497 Notes on gpio"

From eLinux.org
Jump to: navigation, search
m (PRU: Added wiki link)
m
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
[[Category:ECE497 |Notes]]
+
[[Category:ECE497Notes |g ]]
 
{{YoderHead}}
 
{{YoderHead}}
  
Line 49: Line 49:
 
* [https://groups.google.com/forum/?fromgroups#!topic/beagleboard/wkv24jV1zw8 Here's] a good discussion with many leads.
 
* [https://groups.google.com/forum/?fromgroups#!topic/beagleboard/wkv24jV1zw8 Here's] a good discussion with many leads.
 
* [http://aquaticus.info/beaglebone-web-led Here's] a python lead.
 
* [http://aquaticus.info/beaglebone-web-led Here's] a python lead.
 +
* [http://www.linkedin.com/groups/Building-High-Performance-BeagleBone-GPIO-1474607.S.156569753?qid=262fdaa3-69d7-4f42-9f1a-49e025f9c828&trk=group_most_popular-0-b-ttl&goback=%2Eanb_2693438_*2_*1_*1_*1_*1_*1%2Egmp_1474607 Building a High Performance BeagleBone GPIO library in C] is a lead from LinkedIn.
  
 
== PRU ==
 
== PRU ==
Line 54: Line 55:
 
* [https://groups.google.com/forum/?fromgroups#!topic/beagleboard/yOa8LrDtG1A%5B1-25%5D This] points to a nice walk through.
 
* [https://groups.google.com/forum/?fromgroups#!topic/beagleboard/yOa8LrDtG1A%5B1-25%5D This] points to a nice walk through.
 
* [http://processors.wiki.ti.com/index.php/Category:PRU PRU Wiki]
 
* [http://processors.wiki.ti.com/index.php/Category:PRU PRU Wiki]
 +
* [https://github.com/mranostay/beagle-nixie Nixie tube via PRU]
 +
* [https://groups.google.com/forum/?fromgroups=#!topic/beagleboard/eRtL6z_qPAU Spreadsheet for PRU pins]
  
 
== Timers ==
 
== Timers ==
Line 61: Line 64:
 
== SPI ==
 
== SPI ==
  
* [http://www.eetimes.com/discussion/beginner-s-corner/4023908/Introduction-to-Serial-Peripheral-Interface Here's] a nice overview.
+
* [http://www.eetimes.com/discussion/beginner-s-corner/4023908/Introduction-to-Serial-Peripheral-Interface Introduction to Serial Peripheral Interface] looks like a nice overview.
 +
 
 +
== ARM MMU ==
 +
 
 +
* [http://www.embedded-bits.co.uk/2011/mmutheory/#more-705 Turning on an ARM MMU and Living to tell the Tale: Some Theory]
  
 
{{YoderFoot}}
 
{{YoderFoot}}

Revision as of 15:58, 18 May 2013

thumb‎ Embedded Linux Class by Mark A. Yoder


These are notes on how to do gpio faster than the /sys/class/gpio.

DSP

Here are some notes on how to access the gpio pins from the DSP. So far it doesn't read the push button.

Here is the starting point for this. It appears to be a working example that reads the pushbutton (gpio 4) on the Beagle xM from the DSP.

Everything is in a git repository. Here are notes to how to set it up.

beagle$ cd exercises/DSPgpio
beagle$ ls -F
Makefile  readPushbuttonViaDSP*  readPushbuttonViaDSP.c
beagle$ make
/opt/toolchains/c6run_binary/bin/c6runapp-cc   readPushbuttonViaDSP.c -o readPushbuttonViaDSP
"readPushbuttonViaDSP.c", line 35: warning #225-D: function declared implicitly
"readPushbuttonViaDSP.c", line 46: warning #225-D: function declared implicitly
"readPushbuttonViaDSP.c", line 47: warning #225-D: function declared implicitly
"readPushbuttonViaDSP.c", line 50: warning #225-D: function declared implicitly
"readPushbuttonViaDSP.c", line 52: warning #225-D: function declared implicitly 

 undefined        first referenced             
  symbol              in file                  
 ---------        ----------------             
 _HWI_enableWugen ./readPushbuttonViaDSP.temp.o

error #10234-D: unresolved symbols remain
error #10010: errors encountered during linking;
   "readPushbuttonViaDSP.dsp_image.out" not built
make: *** [readPushbuttonViaDSP] Error 1

It appears HWI_enableWugen isn't defined. Let's comment it out and see what happens.

beagle$ make
/opt/toolchains/c6run_binary/bin/c6runapp-cc   readPushbuttonViaDSP.c -o readPushbuttonViaDSP
"readPushbuttonViaDSP.c", line 35: warning #225-D: function declared implicitly
"readPushbuttonViaDSP.c", line 46: warning #225-D: function declared implicitly
"readPushbuttonViaDSP.c", line 50: warning #225-D: function declared implicitly
"readPushbuttonViaDSP.c", line 52: warning #225-D: function declared implicitly 

readPushbuttonViaDSP successfully created

Success, but if you run it, it doesn't respond to the push button.

mmap

PRU

Timers

  • how to change timer from 100 to 1000.

SPI

ARM MMU




thumb‎ Embedded Linux Class by Mark A. Yoder