BF706 UART Port

Discussion created by mghecea on May 25, 2018
Latest reply on May 30, 2018 by mghecea

Since I've seen a few questions on this forum asking about UART code for the BF706, I decided to do a quick and dirty lightweight UART port for the BF706-EZMINI. Since I have decided to take the plunge and build an actual useful port that others can use but not make it over the top complex on the first release. Of course it could be enhanced with DMA so I will pick up where I left off over the course of this weekend if I can find a bit more time available. This is my first try doing a port on the Blackfin, so I hope you may find it useful. I have used two examples to figure it out. One is the BF707 source as suggested by Rithul, and that was a no brainer. Then I dove into some older code I scavenged from the BF533 to put the cool Blackfin logo inside the terminal and that was where some detailed work had to be extracted. Well, that was fun! Enjoy and do make some suggestions of your own if you find it usable...

Here is the BF706 Port I quickly put together...


You will have to pull the project into your CrossCore Embedded Studio by opening it from the location where you extracted the .RAR in order to run this code. You might have to make a debug configuration and you should already know how to do that, since its straightforward. The baudrate is set in the source to 115200. I have used PUTTY agent, so make sure you set up the baudrate correctly or you might get garble if anything at all. Make sure your COM port is set correctly. Look inside DEVICE MANAGER to find your correct port. The attachments to a simple USB UART breakout board can be made as follows:


(Make sure you populate P9 TX/RX Pins from Blackfin)


You can use one of the ground pins from the Arduino Header if you solder some header there...



This is what it should look like when you are finally done!



Here are my polarities on the USB UART to talk to the external world:



Now lets launch PUTTY and setup the BAUDRATE to 115200 and save the configuration for later if you wish.



The code is blocking code and quite elaborate when you actually dig into the calls from Analog. When you run into the terminal you should see something like this if it is configured to debug correctly. I have also gotten the port for Autobaud UART running, so I will have that up soon also...Hang tight! 



Well that about does it for now...Hope to find some time to work on the DMA port of this BF706 UART...Have fun DSP'ing and Cheers!