{"action":"created","issue":{"url":"https://api.github.com/repos/rogerclarkmelbourne/Arduino_STM32/issues/58","labels_url":"https://api.github.com/repos/rogerclarkmelbourne/Arduino_STM32/issues/58/labels{/name}","comments_url":"https://api.github.com/repos/rogerclarkmelbourne/Arduino_STM32/issues/58/comments","events_url":"https://api.github.com/repos/rogerclarkmelbourne/Arduino_STM32/issues/58/events","html_url":"https://github.com/rogerclarkmelbourne/Arduino_STM32/pull/58","id":79265750,"number":58,"title":"SPI DMA functions.","user":{"login":"victorpv","id":11166017,"avatar_url":"https://avatars.githubusercontent.com/u/11166017?v=3","gravatar_id":"","url":"https://api.github.com/users/victorpv","html_url":"https://github.com/victorpv","followers_url":"https://api.github.com/users/victorpv/followers","following_url":"https://api.github.com/users/victorpv/following{/other_user}","gists_url":"https://api.github.com/users/victorpv/gists{/gist_id}","starred_url":"https://api.github.com/users/victorpv/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/victorpv/subscriptions","organizations_url":"https://api.github.com/users/victorpv/orgs","repos_url":"https://api.github.com/users/victorpv/repos","events_url":"https://api.github.com/users/victorpv/events{/privacy}","received_events_url":"https://api.github.com/users/victorpv/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2015-05-22T03:41:13Z","updated_at":"2015-05-22T14:06:40Z","closed_at":"2015-05-22T04:23:07Z","pull_request":{"url":"https://api.github.com/repos/rogerclarkmelbourne/Arduino_STM32/pulls/58","html_url":"https://github.com/rogerclarkmelbourne/Arduino_STM32/pull/58","diff_url":"https://github.com/rogerclarkmelbourne/Arduino_STM32/pull/58.diff","patch_url":"https://github.com/rogerclarkmelbourne/Arduino_STM32/pull/58.patch"},"body":"Adds 5 new functions: DMA Transfer, DMA 8bit send, DMA 16bit send, write\r\n16 bit int. and mode change to change between 8bit and 16 bit transfer.\r\nOn the existing ones I did small changes to correct some problems when receiving data, then added the 16bit ones that can send a single byte, a DMA buffer, and send a word in DMA not incrementing memory (to fill a device such as a display).\r\nThere is an extra function that changes the peripheral between 8 and 16 mode. Can be run on the fly, does not require to setup the SPI port again. You change the mode, do a 16 bit send, change the mode again, do an 8 bit send. It helps a lot with displays that use 16bit for colors, as it goes from 2 SPI transactions to only 1."},"comment":{"url":"https://api.github.com/repos/rogerclarkmelbourne/Arduino_STM32/issues/comments/104668630","html_url":"https://github.com/rogerclarkmelbourne/Arduino_STM32/pull/58#issuecomment-104668630","issue_url":"https://api.github.com/repos/rogerclarkmelbourne/Arduino_STM32/issues/58","id":104668630,"user":{"login":"RickKimball","id":277696,"avatar_url":"https://avatars.githubusercontent.com/u/277696?v=3","gravatar_id":"","url":"https://api.github.com/users/RickKimball","html_url":"https://github.com/RickKimball","followers_url":"https://api.github.com/users/RickKimball/followers","following_url":"https://api.github.com/users/RickKimball/following{/other_user}","gists_url":"https://api.github.com/users/RickKimball/gists{/gist_id}","starred_url":"https://api.github.com/users/RickKimball/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/RickKimball/subscriptions","organizations_url":"https://api.github.com/users/RickKimball/orgs","repos_url":"https://api.github.com/users/RickKimball/repos","events_url":"https://api.github.com/users/RickKimball/events{/privacy}","received_events_url":"https://api.github.com/users/RickKimball/received_events","type":"User","site_admin":false},"created_at":"2015-05-22T14:06:40Z","updated_at":"2015-05-22T14:06:40Z","body":"As far as the libmaple hardware specific stuff, that is hidden behind a public API. The user doesn't see that.  If the user writes to libmaple they are risking cross platform compatibility.\r\n\r\nThis is why it is hard to use some of the libraries from the arduino/avr world.  They have hard coded avr specific code.  If they had stuck to the published API their library would just work with the stm32duino platform."}}