しょっちゅう寄り道ばかりしているのですが、SAM4Lのコードも書いてはいます。まだUSBのCDCドライバを作っているのですが、まだようやくとenumerationが動き始めているところで、CDCでの通信までには至っていません。

動き始めてはいるのでクロックがらみの設定は問題ないことは確認できました。しかし、USBのコントローラであるUSBCの仕様がこれまでのSAM7, SAM3のUDPとは全く違うものなので、手探り状態でコードを書いたり、修正しているようなありさまです。わたしはAVRとかAVR32のUSBについては全く知らないのですが、そちらの方に近いのかもしれませんね。
SAM7/SAM3のUSBがFIFOメモリ経由でデータを読み書きしていたのに対し、SAM4LのUSBはSRAMメモリとダイレクトにDMAしてくれます。この方がわかり易く使いやすいのですが、もともと32KBしかないSRAMを割かなくてはならないのがちょっとツライところです。

動き始めてはいるのでクロックがらみの設定は問題ないことは確認できました。しかし、USBのコントローラであるUSBCの仕様がこれまでのSAM7, SAM3のUDPとは全く違うものなので、手探り状態でコードを書いたり、修正しているようなありさまです。わたしはAVRとかAVR32のUSBについては全く知らないのですが、そちらの方に近いのかもしれませんね。
SAM7/SAM3のUSBがFIFOメモリ経由でデータを読み書きしていたのに対し、SAM4LのUSBはSRAMメモリとダイレクトにDMAしてくれます。この方がわかり易く使いやすいのですが、もともと32KBしかないSRAMを割かなくてはならないのがちょっとツライところです。