primo commit
This commit is contained in:
61
cat.svg
Normal file
61
cat.svg
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||||
|
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||||
|
<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
width="413.928px" height="413.928px" viewBox="0 0 413.928 413.928" style="enable-background:new 0 0 413.928 413.928;"
|
||||||
|
xml:space="preserve">
|
||||||
|
<g>
|
||||||
|
<path d="M115.041,145.731c-15.572,0-28.242,12.669-28.242,28.242c0,15.575,12.675,28.242,28.242,28.242
|
||||||
|
c15.57,0,28.242-12.667,28.242-28.242C143.283,158.4,130.616,145.731,115.041,145.731z M115.041,186.02
|
||||||
|
c-6.637,0-12.042-5.4-12.042-12.04c0-6.645,5.405-12.044,12.042-12.044s12.042,5.399,12.042,12.044
|
||||||
|
C127.083,180.62,121.683,186.02,115.041,186.02z"/>
|
||||||
|
<path d="M244.873,145.731c-15.572,0-28.244,12.669-28.244,28.242c0,15.575,12.677,28.242,28.244,28.242
|
||||||
|
c15.578,0,28.255-12.667,28.255-28.242C273.127,158.4,260.451,145.731,244.873,145.731z M244.873,186.02
|
||||||
|
c-6.634,0-12.044-5.4-12.044-12.04c0-6.645,5.41-12.044,12.044-12.044c6.645,0,12.056,5.399,12.056,12.044
|
||||||
|
C256.928,180.62,251.528,186.02,244.873,186.02z"/>
|
||||||
|
<path d="M353.158,277.963c0-46.918,26.024-63.424,27.084-64.072c3.85-2.278,5.115-7.246,2.837-11.096
|
||||||
|
c-2.283-3.857-7.256-5.121-11.101-2.843c-1.429,0.85-35.021,21.39-35.021,78.011c0,32.083,10.958,52.708,19.76,69.282
|
||||||
|
c6.312,11.865,11.29,21.246,11.29,31.968c0,7.683-1.672,13.23-4.83,16.062c-3.217,2.879-7.42,2.452-7.499,2.452
|
||||||
|
c-0.385-0.058-0.78-0.084-1.171-0.084h-29.815c3.47-5.432,5.516-11.855,5.516-18.769V13.703c0-3.636-2.426-6.827-5.933-7.805
|
||||||
|
c-3.496-0.986-7.225,0.503-9.107,3.615l-39.562,65.485c-12.139-0.231-47.809-0.509-154.588-0.509
|
||||||
|
c-22.673,0-33.895,0.016-39.564,0.056L45.009,4.371c-1.724-3.317-5.508-5.028-9.109-4.137c-3.631,0.886-6.184,4.137-6.184,7.868
|
||||||
|
v370.762c0,19.28,15.681,34.969,34.966,34.969H188.46h106.784h58.82c0.532,0.047,1.286,0.095,2.225,0.095
|
||||||
|
c3.961,0,11.085-0.881,17.36-6.297c7.003-6.054,10.558-15.614,10.558-28.429c0-14.761-6.402-26.815-13.179-39.572
|
||||||
|
C362.65,323.878,353.158,306.007,353.158,277.963z M188.46,397.638H64.682c-10.347,0-18.766-8.422-18.766-18.768V41.28
|
||||||
|
l23.451,45.148c1.484,2.874,4.633,4.538,7.702,4.353c1.625-0.042,13.948-0.092,43.949-0.092c62.264,0,151.983,0.195,158.27,0.504
|
||||||
|
c3.068,0.327,6.159-1.14,7.805-3.863l26.915-44.555v336.1c0,10.347-8.416,18.769-18.763,18.769H188.46V397.638z"/>
|
||||||
|
<path d="M194.134,218.562h-28.35c-4.47,0-8.101,3.623-8.101,8.1c0,4.478,3.631,8.101,8.101,8.101h6.146l-0.599,10.31
|
||||||
|
c-0.266,4.467,3.148,8.295,7.612,8.559c0.158,0.005,0.319,0.011,0.475,0.011c4.261,0,7.831-3.328,8.079-7.631l0.654-11.254h5.982
|
||||||
|
c4.472,0,8.1-3.622,8.1-8.1S198.606,218.562,194.134,218.562z"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.9 KiB |
4345
squeow_hw/bom/ibom.html
Normal file
4345
squeow_hw/bom/ibom.html
Normal file
File diff suppressed because one or more lines are too long
1947
squeow_hw/fp-info-cache
Normal file
1947
squeow_hw/fp-info-cache
Normal file
File diff suppressed because it is too large
Load Diff
BIN
squeow_hw/jlcpcb.zip
Normal file
BIN
squeow_hw/jlcpcb.zip
Normal file
Binary file not shown.
285
squeow_hw/jlcpcb/squeow-B_Cu.gbl
Normal file
285
squeow_hw/jlcpcb/squeow-B_Cu.gbl
Normal file
@@ -0,0 +1,285 @@
|
|||||||
|
G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,6.0.7+dfsg-3*
|
||||||
|
G04 #@! TF.CreationDate,2022-10-05T14:50:53+02:00*
|
||||||
|
G04 #@! TF.ProjectId,squeow,73717565-6f77-42e6-9b69-6361645f7063,rev?*
|
||||||
|
G04 #@! TF.SameCoordinates,Original*
|
||||||
|
G04 #@! TF.FileFunction,Copper,L2,Bot*
|
||||||
|
G04 #@! TF.FilePolarity,Positive*
|
||||||
|
%FSLAX46Y46*%
|
||||||
|
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
|
||||||
|
G04 Created by KiCad (PCBNEW 6.0.7+dfsg-3) date 2022-10-05 14:50:53*
|
||||||
|
%MOMM*%
|
||||||
|
%LPD*%
|
||||||
|
G01*
|
||||||
|
G04 APERTURE LIST*
|
||||||
|
G04 #@! TA.AperFunction,ViaPad*
|
||||||
|
%ADD10C,0.800000*%
|
||||||
|
G04 #@! TD*
|
||||||
|
G04 #@! TA.AperFunction,Conductor*
|
||||||
|
%ADD11C,1.000000*%
|
||||||
|
G04 #@! TD*
|
||||||
|
G04 APERTURE END LIST*
|
||||||
|
D10*
|
||||||
|
X34544000Y-48361600D03*
|
||||||
|
X39751000Y-29718000D03*
|
||||||
|
X23749000Y-22352000D03*
|
||||||
|
X32918400Y-48361600D03*
|
||||||
|
X20193000Y-46736000D03*
|
||||||
|
X17741500Y-22352000D03*
|
||||||
|
X41783000Y-22733000D03*
|
||||||
|
X32893000Y-24003000D03*
|
||||||
|
X15113000Y-53467000D03*
|
||||||
|
X41910000Y-54610000D03*
|
||||||
|
X43307000Y-37338000D03*
|
||||||
|
X27178000Y-38100000D03*
|
||||||
|
X15113000Y-39497000D03*
|
||||||
|
X26060400Y-38811200D03*
|
||||||
|
X17627600Y-45669200D03*
|
||||||
|
X28702000Y-28448000D03*
|
||||||
|
D11*
|
||||||
|
X17627600Y-45669200D02*
|
||||||
|
X19202400Y-45669200D01*
|
||||||
|
X26060400Y-31089600D02*
|
||||||
|
X26060400Y-38811200D01*
|
||||||
|
X19202400Y-45669200D02*
|
||||||
|
X26060400Y-38811200D01*
|
||||||
|
X28702000Y-28448000D02*
|
||||||
|
X26060400Y-31089600D01*
|
||||||
|
G04 #@! TA.AperFunction,Conductor*
|
||||||
|
G36*
|
||||||
|
X47693621Y-12847002D02*
|
||||||
|
G01*
|
||||||
|
X47740114Y-12900658D01*
|
||||||
|
X47751500Y-12953000D01*
|
||||||
|
X47751500Y-55627000D01*
|
||||||
|
X47731498Y-55695121D01*
|
||||||
|
X47677842Y-55741614D01*
|
||||||
|
X47625500Y-55753000D01*
|
||||||
|
X12699500Y-55753000D01*
|
||||||
|
X12631379Y-55732998D01*
|
||||||
|
X12584886Y-55679342D01*
|
||||||
|
X12573500Y-55627000D01*
|
||||||
|
X12573500Y-45662125D01*
|
||||||
|
X16614245Y-45662125D01*
|
||||||
|
X16632170Y-45859088D01*
|
||||||
|
X16688010Y-46048819D01*
|
||||||
|
X16779640Y-46224090D01*
|
||||||
|
X16903568Y-46378225D01*
|
||||||
|
X16908292Y-46382189D01*
|
||||||
|
X16915533Y-46388265D01*
|
||||||
|
X17055074Y-46505354D01*
|
||||||
|
X17060472Y-46508321D01*
|
||||||
|
X17060477Y-46508325D01*
|
||||||
|
X17157853Y-46561857D01*
|
||||||
|
X17228387Y-46600633D01*
|
||||||
|
X17234254Y-46602494D01*
|
||||||
|
X17234256Y-46602495D01*
|
||||||
|
X17411036Y-46658573D01*
|
||||||
|
X17416906Y-46660435D01*
|
||||||
|
X17570827Y-46677700D01*
|
||||||
|
X19140557Y-46677700D01*
|
||||||
|
X19154164Y-46678437D01*
|
||||||
|
X19185662Y-46681859D01*
|
||||||
|
X19185667Y-46681859D01*
|
||||||
|
X19191788Y-46682524D01*
|
||||||
|
X19218038Y-46680227D01*
|
||||||
|
X19241788Y-46678150D01*
|
||||||
|
X19246614Y-46677821D01*
|
||||||
|
X19249086Y-46677700D01*
|
||||||
|
X19252169Y-46677700D01*
|
||||||
|
X19264138Y-46676526D01*
|
||||||
|
X19294906Y-46673510D01*
|
||||||
|
X19296219Y-46673388D01*
|
||||||
|
X19340484Y-46669515D01*
|
||||||
|
X19388813Y-46665287D01*
|
||||||
|
X19393932Y-46663800D01*
|
||||||
|
X19399233Y-46663280D01*
|
||||||
|
X19488234Y-46636409D01*
|
||||||
|
X19489367Y-46636074D01*
|
||||||
|
X19572814Y-46611830D01*
|
||||||
|
X19572818Y-46611828D01*
|
||||||
|
X19578736Y-46610109D01*
|
||||||
|
X19583468Y-46607656D01*
|
||||||
|
X19588569Y-46606116D01*
|
||||||
|
X19604460Y-46597667D01*
|
||||||
|
X19670660Y-46562469D01*
|
||||||
|
X19671826Y-46561857D01*
|
||||||
|
X19748853Y-46521929D01*
|
||||||
|
X19754326Y-46519092D01*
|
||||||
|
X19758489Y-46515769D01*
|
||||||
|
X19763196Y-46513266D01*
|
||||||
|
X19835318Y-46454445D01*
|
||||||
|
X19836174Y-46453754D01*
|
||||||
|
X19875373Y-46422462D01*
|
||||||
|
X19877877Y-46419958D01*
|
||||||
|
X19878595Y-46419316D01*
|
||||||
|
X19882928Y-46415615D01*
|
||||||
|
X19916462Y-46388265D01*
|
||||||
|
X19945688Y-46352937D01*
|
||||||
|
X19953677Y-46344158D01*
|
||||||
|
X26729779Y-39568055D01*
|
||||||
|
X26739922Y-39558953D01*
|
||||||
|
X26764618Y-39539097D01*
|
||||||
|
X26769425Y-39535232D01*
|
||||||
|
X26801692Y-39496778D01*
|
||||||
|
X26804873Y-39493130D01*
|
||||||
|
X26806517Y-39491317D01*
|
||||||
|
X26808709Y-39489125D01*
|
||||||
|
X26835980Y-39455924D01*
|
||||||
|
X26836762Y-39454982D01*
|
||||||
|
X26892593Y-39388447D01*
|
||||||
|
X26892595Y-39388444D01*
|
||||||
|
X26896554Y-39383726D01*
|
||||||
|
X26899123Y-39379053D01*
|
||||||
|
X26902503Y-39374938D01*
|
||||||
|
X26946428Y-39293020D01*
|
||||||
|
X26947057Y-39291862D01*
|
||||||
|
X26988865Y-39215812D01*
|
||||||
|
X26988865Y-39215811D01*
|
||||||
|
X26991833Y-39210413D01*
|
||||||
|
X26993444Y-39205335D01*
|
||||||
|
X26995963Y-39200637D01*
|
||||||
|
X27023153Y-39111702D01*
|
||||||
|
X27023536Y-39110472D01*
|
||||||
|
X27049771Y-39027770D01*
|
||||||
|
X27051635Y-39021894D01*
|
||||||
|
X27052228Y-39016603D01*
|
||||||
|
X27053788Y-39011502D01*
|
||||||
|
X27063195Y-38918889D01*
|
||||||
|
X27063315Y-38917769D01*
|
||||||
|
X27068900Y-38867973D01*
|
||||||
|
X27068900Y-38864444D01*
|
||||||
|
X27068955Y-38863461D01*
|
||||||
|
X27069404Y-38857756D01*
|
||||||
|
X27073152Y-38820864D01*
|
||||||
|
X27073152Y-38820861D01*
|
||||||
|
X27073774Y-38814737D01*
|
||||||
|
X27069459Y-38769088D01*
|
||||||
|
X27068900Y-38757231D01*
|
||||||
|
X27068900Y-31559525D01*
|
||||||
|
X27088902Y-31491404D01*
|
||||||
|
X27105805Y-31470430D01*
|
||||||
|
X29450310Y-29125925D01*
|
||||||
|
X29544103Y-29011738D01*
|
||||||
|
X29547010Y-29006316D01*
|
||||||
|
X29547013Y-29006312D01*
|
||||||
|
X29634651Y-28842868D01*
|
||||||
|
X29634651Y-28842867D01*
|
||||||
|
X29637563Y-28837437D01*
|
||||||
|
X29695388Y-28648302D01*
|
||||||
|
X29715374Y-28451537D01*
|
||||||
|
X29696762Y-28254638D01*
|
||||||
|
X29640260Y-28065103D01*
|
||||||
|
X29548018Y-27890153D01*
|
||||||
|
X29423553Y-27736452D01*
|
||||||
|
X29271605Y-27609853D01*
|
||||||
|
X29097960Y-27515178D01*
|
||||||
|
X28909232Y-27456035D01*
|
||||||
|
X28903109Y-27455370D01*
|
||||||
|
X28903105Y-27455369D01*
|
||||||
|
X28718737Y-27435340D01*
|
||||||
|
X28718733Y-27435340D01*
|
||||||
|
X28712612Y-27434675D01*
|
||||||
|
X28515587Y-27451912D01*
|
||||||
|
X28410386Y-27482477D01*
|
||||||
|
X28331579Y-27505372D01*
|
||||||
|
X28331574Y-27505374D01*
|
||||||
|
X28325664Y-27507091D01*
|
||||||
|
X28150074Y-27598108D01*
|
||||||
|
X28029028Y-27694738D01*
|
||||||
|
X25391021Y-30332745D01*
|
||||||
|
X25380878Y-30341847D01*
|
||||||
|
X25351375Y-30365568D01*
|
||||||
|
X25347408Y-30370296D01*
|
||||||
|
X25319109Y-30404021D01*
|
||||||
|
X25315928Y-30407669D01*
|
||||||
|
X25314285Y-30409481D01*
|
||||||
|
X25312091Y-30411675D01*
|
||||||
|
X25284758Y-30444949D01*
|
||||||
|
X25284096Y-30445747D01*
|
||||||
|
X25224246Y-30517074D01*
|
||||||
|
X25221678Y-30521744D01*
|
||||||
|
X25218297Y-30525861D01*
|
||||||
|
X25187260Y-30583745D01*
|
||||||
|
X25174423Y-30607686D01*
|
||||||
|
X25173794Y-30608845D01*
|
||||||
|
X25131938Y-30684981D01*
|
||||||
|
X25131935Y-30684989D01*
|
||||||
|
X25128967Y-30690387D01*
|
||||||
|
X25127355Y-30695469D01*
|
||||||
|
X25124838Y-30700163D01*
|
||||||
|
X25097638Y-30789131D01*
|
||||||
|
X25097318Y-30790159D01*
|
||||||
|
X25069165Y-30878906D01*
|
||||||
|
X25068571Y-30884202D01*
|
||||||
|
X25067013Y-30889298D01*
|
||||||
|
X25066390Y-30895434D01*
|
||||||
|
X25057618Y-30981787D01*
|
||||||
|
X25057489Y-30982993D01*
|
||||||
|
X25051900Y-31032827D01*
|
||||||
|
X25051900Y-31036354D01*
|
||||||
|
X25051845Y-31037339D01*
|
||||||
|
X25051398Y-31043019D01*
|
||||||
|
X25047026Y-31086062D01*
|
||||||
|
X25047606Y-31092193D01*
|
||||||
|
X25051341Y-31131709D01*
|
||||||
|
X25051900Y-31143567D01*
|
||||||
|
X25051900Y-38341276D01*
|
||||||
|
X25031898Y-38409397D01*
|
||||||
|
X25014995Y-38430371D01*
|
||||||
|
X18821571Y-44623795D01*
|
||||||
|
X18759259Y-44657821D01*
|
||||||
|
X18732476Y-44660700D01*
|
||||||
|
X17577831Y-44660700D01*
|
||||||
|
X17574775Y-44661000D01*
|
||||||
|
X17574768Y-44661000D01*
|
||||||
|
X17516260Y-44666737D01*
|
||||||
|
X17430767Y-44675120D01*
|
||||||
|
X17424866Y-44676902D01*
|
||||||
|
X17424864Y-44676902D01*
|
||||||
|
X17351547Y-44699038D01*
|
||||||
|
X17241431Y-44732284D01*
|
||||||
|
X17066804Y-44825134D01*
|
||||||
|
X16980538Y-44895491D01*
|
||||||
|
X16918313Y-44946240D01*
|
||||||
|
X16918310Y-44946243D01*
|
||||||
|
X16913538Y-44950135D01*
|
||||||
|
X16909611Y-44954882D01*
|
||||||
|
X16909609Y-44954884D01*
|
||||||
|
X16791399Y-45097775D01*
|
||||||
|
X16791397Y-45097779D01*
|
||||||
|
X16787470Y-45102525D01*
|
||||||
|
X16693402Y-45276499D01*
|
||||||
|
X16634918Y-45465432D01*
|
||||||
|
X16614245Y-45662125D01*
|
||||||
|
X12573500Y-45662125D01*
|
||||||
|
X12573500Y-14277615D01*
|
||||||
|
X12593502Y-14209494D01*
|
||||||
|
X12647158Y-14163001D01*
|
||||||
|
X12667526Y-14155739D01*
|
||||||
|
X12707579Y-14145231D01*
|
||||||
|
X12760411Y-14131371D01*
|
||||||
|
X12764371Y-14129731D01*
|
||||||
|
X12764376Y-14129729D01*
|
||||||
|
X12912246Y-14068479D01*
|
||||||
|
X13034415Y-14017875D01*
|
||||||
|
X13290482Y-13868242D01*
|
||||||
|
X13523871Y-13685241D01*
|
||||||
|
X13730266Y-13472258D01*
|
||||||
|
X13732799Y-13468810D01*
|
||||||
|
X13732803Y-13468805D01*
|
||||||
|
X13903307Y-13236691D01*
|
||||||
|
X13905845Y-13233236D01*
|
||||||
|
X13977223Y-13101775D01*
|
||||||
|
X14045311Y-12976372D01*
|
||||||
|
X14045312Y-12976370D01*
|
||||||
|
X14047361Y-12972596D01*
|
||||||
|
X14060907Y-12936748D01*
|
||||||
|
X14071595Y-12908463D01*
|
||||||
|
X14114385Y-12851809D01*
|
||||||
|
X14181010Y-12827284D01*
|
||||||
|
X14189461Y-12827000D01*
|
||||||
|
X47625500Y-12827000D01*
|
||||||
|
X47693621Y-12847002D01*
|
||||||
|
G37*
|
||||||
|
G04 #@! TD.AperFunction*
|
||||||
|
M02*
|
||||||
15
squeow_hw/jlcpcb/squeow-B_Mask.gbs
Normal file
15
squeow_hw/jlcpcb/squeow-B_Mask.gbs
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,6.0.7+dfsg-3*
|
||||||
|
G04 #@! TF.CreationDate,2022-10-05T14:50:53+02:00*
|
||||||
|
G04 #@! TF.ProjectId,squeow,73717565-6f77-42e6-9b69-6361645f7063,rev?*
|
||||||
|
G04 #@! TF.SameCoordinates,Original*
|
||||||
|
G04 #@! TF.FileFunction,Soldermask,Bot*
|
||||||
|
G04 #@! TF.FilePolarity,Negative*
|
||||||
|
%FSLAX46Y46*%
|
||||||
|
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
|
||||||
|
G04 Created by KiCad (PCBNEW 6.0.7+dfsg-3) date 2022-10-05 14:50:53*
|
||||||
|
%MOMM*%
|
||||||
|
%LPD*%
|
||||||
|
G01*
|
||||||
|
G04 APERTURE LIST*
|
||||||
|
G04 APERTURE END LIST*
|
||||||
|
M02*
|
||||||
15
squeow_hw/jlcpcb/squeow-B_Paste.gbp
Normal file
15
squeow_hw/jlcpcb/squeow-B_Paste.gbp
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,6.0.7+dfsg-3*
|
||||||
|
G04 #@! TF.CreationDate,2022-10-05T14:50:53+02:00*
|
||||||
|
G04 #@! TF.ProjectId,squeow,73717565-6f77-42e6-9b69-6361645f7063,rev?*
|
||||||
|
G04 #@! TF.SameCoordinates,Original*
|
||||||
|
G04 #@! TF.FileFunction,Paste,Bot*
|
||||||
|
G04 #@! TF.FilePolarity,Positive*
|
||||||
|
%FSLAX46Y46*%
|
||||||
|
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
|
||||||
|
G04 Created by KiCad (PCBNEW 6.0.7+dfsg-3) date 2022-10-05 14:50:53*
|
||||||
|
%MOMM*%
|
||||||
|
%LPD*%
|
||||||
|
G01*
|
||||||
|
G04 APERTURE LIST*
|
||||||
|
G04 APERTURE END LIST*
|
||||||
|
M02*
|
||||||
16
squeow_hw/jlcpcb/squeow-B_Silkscreen.gbo
Normal file
16
squeow_hw/jlcpcb/squeow-B_Silkscreen.gbo
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,6.0.7+dfsg-3*
|
||||||
|
G04 #@! TF.CreationDate,2022-10-05T14:50:53+02:00*
|
||||||
|
G04 #@! TF.ProjectId,squeow,73717565-6f77-42e6-9b69-6361645f7063,rev?*
|
||||||
|
G04 #@! TF.SameCoordinates,Original*
|
||||||
|
G04 #@! TF.FileFunction,Legend,Bot*
|
||||||
|
G04 #@! TF.FilePolarity,Positive*
|
||||||
|
%FSLAX46Y46*%
|
||||||
|
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
|
||||||
|
G04 Created by KiCad (PCBNEW 6.0.7+dfsg-3) date 2022-10-05 14:50:53*
|
||||||
|
%MOMM*%
|
||||||
|
%LPD*%
|
||||||
|
G01*
|
||||||
|
G04 APERTURE LIST*
|
||||||
|
G04 APERTURE END LIST*
|
||||||
|
%LPC*%
|
||||||
|
M02*
|
||||||
39
squeow_hw/jlcpcb/squeow-Edge_Cuts.gm1
Normal file
39
squeow_hw/jlcpcb/squeow-Edge_Cuts.gm1
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,6.0.7+dfsg-3*
|
||||||
|
G04 #@! TF.CreationDate,2022-10-05T14:50:53+02:00*
|
||||||
|
G04 #@! TF.ProjectId,squeow,73717565-6f77-42e6-9b69-6361645f7063,rev?*
|
||||||
|
G04 #@! TF.SameCoordinates,Original*
|
||||||
|
G04 #@! TF.FileFunction,Profile,NP*
|
||||||
|
%FSLAX46Y46*%
|
||||||
|
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
|
||||||
|
G04 Created by KiCad (PCBNEW 6.0.7+dfsg-3) date 2022-10-05 14:50:53*
|
||||||
|
%MOMM*%
|
||||||
|
%LPD*%
|
||||||
|
G01*
|
||||||
|
G04 APERTURE LIST*
|
||||||
|
G04 #@! TA.AperFunction,Profile*
|
||||||
|
%ADD10C,0.150000*%
|
||||||
|
G04 #@! TD*
|
||||||
|
G04 #@! TA.AperFunction,Profile*
|
||||||
|
%ADD11C,0.100000*%
|
||||||
|
G04 #@! TD*
|
||||||
|
G04 APERTURE END LIST*
|
||||||
|
D10*
|
||||||
|
X12065000Y-12065000D02*
|
||||||
|
X48260000Y-12065000D01*
|
||||||
|
X48260000Y-12065000D02*
|
||||||
|
X48260000Y-56515000D01*
|
||||||
|
X48260000Y-56515000D02*
|
||||||
|
X12065000Y-56515000D01*
|
||||||
|
X12065000Y-56515000D02*
|
||||||
|
X12065000Y-12065000D01*
|
||||||
|
D11*
|
||||||
|
X13731666Y-12065000D02*
|
||||||
|
G75*
|
||||||
|
G03*
|
||||||
|
X13731666Y-12065000I-1666666J0D01*
|
||||||
|
G01*
|
||||||
|
X9565000Y-12065000D02*
|
||||||
|
X14565000Y-12065000D01*
|
||||||
|
X12065000Y-9565000D02*
|
||||||
|
X12065000Y-14565000D01*
|
||||||
|
M02*
|
||||||
3374
squeow_hw/jlcpcb/squeow-F_Cu.gtl
Normal file
3374
squeow_hw/jlcpcb/squeow-F_Cu.gtl
Normal file
File diff suppressed because it is too large
Load Diff
226
squeow_hw/jlcpcb/squeow-F_Mask.gts
Normal file
226
squeow_hw/jlcpcb/squeow-F_Mask.gts
Normal file
@@ -0,0 +1,226 @@
|
|||||||
|
G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,6.0.7+dfsg-3*
|
||||||
|
G04 #@! TF.CreationDate,2022-10-05T14:50:53+02:00*
|
||||||
|
G04 #@! TF.ProjectId,squeow,73717565-6f77-42e6-9b69-6361645f7063,rev?*
|
||||||
|
G04 #@! TF.SameCoordinates,Original*
|
||||||
|
G04 #@! TF.FileFunction,Soldermask,Top*
|
||||||
|
G04 #@! TF.FilePolarity,Negative*
|
||||||
|
%FSLAX46Y46*%
|
||||||
|
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
|
||||||
|
G04 Created by KiCad (PCBNEW 6.0.7+dfsg-3) date 2022-10-05 14:50:53*
|
||||||
|
%MOMM*%
|
||||||
|
%LPD*%
|
||||||
|
G01*
|
||||||
|
G04 APERTURE LIST*
|
||||||
|
G04 Aperture macros list*
|
||||||
|
%AMRoundRect*
|
||||||
|
0 Rectangle with rounded corners*
|
||||||
|
0 $1 Rounding radius*
|
||||||
|
0 $2 $3 $4 $5 $6 $7 $8 $9 X,Y pos of 4 corners*
|
||||||
|
0 Add a 4 corners polygon primitive as box body*
|
||||||
|
4,1,4,$2,$3,$4,$5,$6,$7,$8,$9,$2,$3,0*
|
||||||
|
0 Add four circle primitives for the rounded corners*
|
||||||
|
1,1,$1+$1,$2,$3*
|
||||||
|
1,1,$1+$1,$4,$5*
|
||||||
|
1,1,$1+$1,$6,$7*
|
||||||
|
1,1,$1+$1,$8,$9*
|
||||||
|
0 Add four rect primitives between the rounded corners*
|
||||||
|
20,1,$1+$1,$2,$3,$4,$5,0*
|
||||||
|
20,1,$1+$1,$4,$5,$6,$7,0*
|
||||||
|
20,1,$1+$1,$6,$7,$8,$9,0*
|
||||||
|
20,1,$1+$1,$8,$9,$2,$3,0*%
|
||||||
|
%AMFreePoly0*
|
||||||
|
4,1,9,3.862500,-0.866500,0.737500,-0.866500,0.737500,-0.450000,-0.737500,-0.450000,-0.737500,0.450000,0.737500,0.450000,0.737500,0.866500,3.862500,0.866500,3.862500,-0.866500,3.862500,-0.866500,$1*%
|
||||||
|
G04 Aperture macros list end*
|
||||||
|
%ADD10R,1.000000X2.510000*%
|
||||||
|
%ADD11RoundRect,0.250000X0.350000X0.450000X-0.350000X0.450000X-0.350000X-0.450000X0.350000X-0.450000X0*%
|
||||||
|
%ADD12RoundRect,0.250000X-0.412500X-1.100000X0.412500X-1.100000X0.412500X1.100000X-0.412500X1.100000X0*%
|
||||||
|
%ADD13R,0.900000X1.300000*%
|
||||||
|
%ADD14FreePoly0,90.000000*%
|
||||||
|
%ADD15RoundRect,0.125000X-0.625000X-0.125000X0.625000X-0.125000X0.625000X0.125000X-0.625000X0.125000X0*%
|
||||||
|
%ADD16RoundRect,0.125000X-0.125000X-0.625000X0.125000X-0.625000X0.125000X0.625000X-0.125000X0.625000X0*%
|
||||||
|
%ADD17R,0.300000X1.400000*%
|
||||||
|
%ADD18R,0.700000X0.450000*%
|
||||||
|
%ADD19R,1.900000X1.000000*%
|
||||||
|
%ADD20RoundRect,0.250000X-1.100000X0.412500X-1.100000X-0.412500X1.100000X-0.412500X1.100000X0.412500X0*%
|
||||||
|
%ADD21RoundRect,0.250000X0.412500X1.100000X-0.412500X1.100000X-0.412500X-1.100000X0.412500X-1.100000X0*%
|
||||||
|
%ADD22RoundRect,0.250000X1.100000X-0.412500X1.100000X0.412500X-1.100000X0.412500X-1.100000X-0.412500X0*%
|
||||||
|
%ADD23RoundRect,0.150000X0.150000X-0.825000X0.150000X0.825000X-0.150000X0.825000X-0.150000X-0.825000X0*%
|
||||||
|
%ADD24RoundRect,0.150000X-0.825000X-0.150000X0.825000X-0.150000X0.825000X0.150000X-0.825000X0.150000X0*%
|
||||||
|
%ADD25RoundRect,0.250000X-0.350000X-0.450000X0.350000X-0.450000X0.350000X0.450000X-0.350000X0.450000X0*%
|
||||||
|
%ADD26R,4.000000X4.000000*%
|
||||||
|
%ADD27R,0.450000X0.700000*%
|
||||||
|
%ADD28R,1.500000X2.700000*%
|
||||||
|
%ADD29R,2.400000X3.500000*%
|
||||||
|
%ADD30R,2.510000X1.000000*%
|
||||||
|
G04 APERTURE END LIST*
|
||||||
|
D10*
|
||||||
|
X36728400Y-54610000D03*
|
||||||
|
X39268400Y-51300000D03*
|
||||||
|
D11*
|
||||||
|
X36290000Y-34163000D03*
|
||||||
|
X34290000Y-34163000D03*
|
||||||
|
D12*
|
||||||
|
X14616500Y-28194000D03*
|
||||||
|
X17741500Y-28194000D03*
|
||||||
|
D13*
|
||||||
|
X27075000Y-26542000D03*
|
||||||
|
D14*
|
||||||
|
X28575000Y-26454500D03*
|
||||||
|
D13*
|
||||||
|
X30075000Y-26542000D03*
|
||||||
|
D12*
|
||||||
|
X32981500Y-14605000D03*
|
||||||
|
X36106500Y-14605000D03*
|
||||||
|
D15*
|
||||||
|
X27536500Y-39745000D03*
|
||||||
|
X27536500Y-40545000D03*
|
||||||
|
X27536500Y-41345000D03*
|
||||||
|
X27536500Y-42145000D03*
|
||||||
|
X27536500Y-42945000D03*
|
||||||
|
X27536500Y-43745000D03*
|
||||||
|
X27536500Y-44545000D03*
|
||||||
|
X27536500Y-45345000D03*
|
||||||
|
D16*
|
||||||
|
X28911500Y-46720000D03*
|
||||||
|
X29711500Y-46720000D03*
|
||||||
|
X30511500Y-46720000D03*
|
||||||
|
X31311500Y-46720000D03*
|
||||||
|
X32111500Y-46720000D03*
|
||||||
|
X32911500Y-46720000D03*
|
||||||
|
X33711500Y-46720000D03*
|
||||||
|
X34511500Y-46720000D03*
|
||||||
|
D15*
|
||||||
|
X35886500Y-45345000D03*
|
||||||
|
X35886500Y-44545000D03*
|
||||||
|
X35886500Y-43745000D03*
|
||||||
|
X35886500Y-42945000D03*
|
||||||
|
X35886500Y-42145000D03*
|
||||||
|
X35886500Y-41345000D03*
|
||||||
|
X35886500Y-40545000D03*
|
||||||
|
X35886500Y-39745000D03*
|
||||||
|
D16*
|
||||||
|
X34511500Y-38370000D03*
|
||||||
|
X33711500Y-38370000D03*
|
||||||
|
X32911500Y-38370000D03*
|
||||||
|
X32111500Y-38370000D03*
|
||||||
|
X31311500Y-38370000D03*
|
||||||
|
X30511500Y-38370000D03*
|
||||||
|
X29711500Y-38370000D03*
|
||||||
|
X28911500Y-38370000D03*
|
||||||
|
D17*
|
||||||
|
X18042000Y-36195000D03*
|
||||||
|
X18542000Y-36195000D03*
|
||||||
|
X19042000Y-36195000D03*
|
||||||
|
X19542000Y-36195000D03*
|
||||||
|
X20042000Y-36195000D03*
|
||||||
|
X20042000Y-31795000D03*
|
||||||
|
X19542000Y-31795000D03*
|
||||||
|
X19042000Y-31795000D03*
|
||||||
|
X18542000Y-31795000D03*
|
||||||
|
X18042000Y-31795000D03*
|
||||||
|
D12*
|
||||||
|
X20701000Y-28194000D03*
|
||||||
|
X23826000Y-28194000D03*
|
||||||
|
D11*
|
||||||
|
X36290000Y-32258000D03*
|
||||||
|
X34290000Y-32258000D03*
|
||||||
|
D18*
|
||||||
|
X19304000Y-44816000D03*
|
||||||
|
X19304000Y-46116000D03*
|
||||||
|
X21304000Y-45466000D03*
|
||||||
|
D19*
|
||||||
|
X17018000Y-53467000D03*
|
||||||
|
X13718000Y-50927000D03*
|
||||||
|
X17018000Y-48387000D03*
|
||||||
|
X13718000Y-45847000D03*
|
||||||
|
X17018000Y-43307000D03*
|
||||||
|
D20*
|
||||||
|
X20193000Y-38442500D03*
|
||||||
|
X20193000Y-41567500D03*
|
||||||
|
D21*
|
||||||
|
X39624000Y-47625000D03*
|
||||||
|
X36499000Y-47625000D03*
|
||||||
|
D22*
|
||||||
|
X32893000Y-28448000D03*
|
||||||
|
X32893000Y-25323000D03*
|
||||||
|
D23*
|
||||||
|
X13931500Y-24700000D03*
|
||||||
|
X15201500Y-24700000D03*
|
||||||
|
X16471500Y-24700000D03*
|
||||||
|
X17741500Y-24700000D03*
|
||||||
|
X17741500Y-19750000D03*
|
||||||
|
X16471500Y-19750000D03*
|
||||||
|
X15201500Y-19750000D03*
|
||||||
|
X13931500Y-19750000D03*
|
||||||
|
D24*
|
||||||
|
X27178000Y-30480000D03*
|
||||||
|
X27178000Y-31750000D03*
|
||||||
|
X27178000Y-33020000D03*
|
||||||
|
X27178000Y-34290000D03*
|
||||||
|
X32128000Y-34290000D03*
|
||||||
|
X32128000Y-33020000D03*
|
||||||
|
X32128000Y-31750000D03*
|
||||||
|
X32128000Y-30480000D03*
|
||||||
|
D25*
|
||||||
|
X26797000Y-36195000D03*
|
||||||
|
X28797000Y-36195000D03*
|
||||||
|
D22*
|
||||||
|
X15367000Y-34875000D03*
|
||||||
|
X15367000Y-31750000D03*
|
||||||
|
D26*
|
||||||
|
X28536500Y-15748000D03*
|
||||||
|
D10*
|
||||||
|
X20370800Y-54610000D03*
|
||||||
|
X22910800Y-51300000D03*
|
||||||
|
X25450800Y-54610000D03*
|
||||||
|
X27990800Y-51300000D03*
|
||||||
|
X30530800Y-54610000D03*
|
||||||
|
X33070800Y-51300000D03*
|
||||||
|
D27*
|
||||||
|
X17160000Y-38624000D03*
|
||||||
|
X15860000Y-38624000D03*
|
||||||
|
X16510000Y-40624000D03*
|
||||||
|
D26*
|
||||||
|
X16471500Y-15748000D03*
|
||||||
|
D27*
|
||||||
|
X14239000Y-38624000D03*
|
||||||
|
X12939000Y-38624000D03*
|
||||||
|
X13589000Y-40624000D03*
|
||||||
|
D28*
|
||||||
|
X33033000Y-18034000D03*
|
||||||
|
X37833000Y-18034000D03*
|
||||||
|
D18*
|
||||||
|
X19336000Y-47483000D03*
|
||||||
|
X19336000Y-48783000D03*
|
||||||
|
X21336000Y-48133000D03*
|
||||||
|
D23*
|
||||||
|
X19939000Y-24700000D03*
|
||||||
|
X21209000Y-24700000D03*
|
||||||
|
X22479000Y-24700000D03*
|
||||||
|
X23749000Y-24700000D03*
|
||||||
|
X23749000Y-19750000D03*
|
||||||
|
X22479000Y-19750000D03*
|
||||||
|
X21209000Y-19750000D03*
|
||||||
|
X19939000Y-19750000D03*
|
||||||
|
D26*
|
||||||
|
X22479000Y-15748000D03*
|
||||||
|
D29*
|
||||||
|
X23622000Y-39370000D03*
|
||||||
|
X23622000Y-34170000D03*
|
||||||
|
D30*
|
||||||
|
X45978000Y-52578000D03*
|
||||||
|
X42668000Y-50038000D03*
|
||||||
|
X45978000Y-47498000D03*
|
||||||
|
X42668000Y-44958000D03*
|
||||||
|
X45978000Y-42418000D03*
|
||||||
|
X42668000Y-39878000D03*
|
||||||
|
X45978000Y-37338000D03*
|
||||||
|
X42668000Y-34798000D03*
|
||||||
|
X45978000Y-32258000D03*
|
||||||
|
X42668000Y-29718000D03*
|
||||||
|
X45978000Y-27178000D03*
|
||||||
|
X42668000Y-24638000D03*
|
||||||
|
X45978000Y-22098000D03*
|
||||||
|
X42668000Y-19558000D03*
|
||||||
|
X45978000Y-17018000D03*
|
||||||
|
M02*
|
||||||
218
squeow_hw/jlcpcb/squeow-F_Paste.gtp
Normal file
218
squeow_hw/jlcpcb/squeow-F_Paste.gtp
Normal file
@@ -0,0 +1,218 @@
|
|||||||
|
G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,6.0.7+dfsg-3*
|
||||||
|
G04 #@! TF.CreationDate,2022-10-05T14:50:53+02:00*
|
||||||
|
G04 #@! TF.ProjectId,squeow,73717565-6f77-42e6-9b69-6361645f7063,rev?*
|
||||||
|
G04 #@! TF.SameCoordinates,Original*
|
||||||
|
G04 #@! TF.FileFunction,Paste,Top*
|
||||||
|
G04 #@! TF.FilePolarity,Positive*
|
||||||
|
%FSLAX46Y46*%
|
||||||
|
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
|
||||||
|
G04 Created by KiCad (PCBNEW 6.0.7+dfsg-3) date 2022-10-05 14:50:53*
|
||||||
|
%MOMM*%
|
||||||
|
%LPD*%
|
||||||
|
G01*
|
||||||
|
G04 APERTURE LIST*
|
||||||
|
G04 Aperture macros list*
|
||||||
|
%AMRoundRect*
|
||||||
|
0 Rectangle with rounded corners*
|
||||||
|
0 $1 Rounding radius*
|
||||||
|
0 $2 $3 $4 $5 $6 $7 $8 $9 X,Y pos of 4 corners*
|
||||||
|
0 Add a 4 corners polygon primitive as box body*
|
||||||
|
4,1,4,$2,$3,$4,$5,$6,$7,$8,$9,$2,$3,0*
|
||||||
|
0 Add four circle primitives for the rounded corners*
|
||||||
|
1,1,$1+$1,$2,$3*
|
||||||
|
1,1,$1+$1,$4,$5*
|
||||||
|
1,1,$1+$1,$6,$7*
|
||||||
|
1,1,$1+$1,$8,$9*
|
||||||
|
0 Add four rect primitives between the rounded corners*
|
||||||
|
20,1,$1+$1,$2,$3,$4,$5,0*
|
||||||
|
20,1,$1+$1,$4,$5,$6,$7,0*
|
||||||
|
20,1,$1+$1,$6,$7,$8,$9,0*
|
||||||
|
20,1,$1+$1,$8,$9,$2,$3,0*%
|
||||||
|
%AMFreePoly0*
|
||||||
|
4,1,9,3.862500,-0.866500,0.737500,-0.866500,0.737500,-0.450000,-0.737500,-0.450000,-0.737500,0.450000,0.737500,0.450000,0.737500,0.866500,3.862500,0.866500,3.862500,-0.866500,3.862500,-0.866500,$1*%
|
||||||
|
G04 Aperture macros list end*
|
||||||
|
%ADD10R,1.000000X2.510000*%
|
||||||
|
%ADD11RoundRect,0.250000X0.350000X0.450000X-0.350000X0.450000X-0.350000X-0.450000X0.350000X-0.450000X0*%
|
||||||
|
%ADD12RoundRect,0.250000X-0.412500X-1.100000X0.412500X-1.100000X0.412500X1.100000X-0.412500X1.100000X0*%
|
||||||
|
%ADD13R,0.900000X1.300000*%
|
||||||
|
%ADD14FreePoly0,90.000000*%
|
||||||
|
%ADD15RoundRect,0.125000X-0.625000X-0.125000X0.625000X-0.125000X0.625000X0.125000X-0.625000X0.125000X0*%
|
||||||
|
%ADD16RoundRect,0.125000X-0.125000X-0.625000X0.125000X-0.625000X0.125000X0.625000X-0.125000X0.625000X0*%
|
||||||
|
%ADD17R,0.300000X1.400000*%
|
||||||
|
%ADD18R,0.700000X0.450000*%
|
||||||
|
%ADD19R,1.900000X1.000000*%
|
||||||
|
%ADD20RoundRect,0.250000X-1.100000X0.412500X-1.100000X-0.412500X1.100000X-0.412500X1.100000X0.412500X0*%
|
||||||
|
%ADD21RoundRect,0.250000X0.412500X1.100000X-0.412500X1.100000X-0.412500X-1.100000X0.412500X-1.100000X0*%
|
||||||
|
%ADD22RoundRect,0.250000X1.100000X-0.412500X1.100000X0.412500X-1.100000X0.412500X-1.100000X-0.412500X0*%
|
||||||
|
%ADD23RoundRect,0.150000X0.150000X-0.825000X0.150000X0.825000X-0.150000X0.825000X-0.150000X-0.825000X0*%
|
||||||
|
%ADD24RoundRect,0.150000X-0.825000X-0.150000X0.825000X-0.150000X0.825000X0.150000X-0.825000X0.150000X0*%
|
||||||
|
%ADD25RoundRect,0.250000X-0.350000X-0.450000X0.350000X-0.450000X0.350000X0.450000X-0.350000X0.450000X0*%
|
||||||
|
%ADD26R,0.450000X0.700000*%
|
||||||
|
%ADD27R,1.500000X2.700000*%
|
||||||
|
%ADD28R,2.400000X3.500000*%
|
||||||
|
%ADD29R,2.510000X1.000000*%
|
||||||
|
G04 APERTURE END LIST*
|
||||||
|
D10*
|
||||||
|
X36728400Y-54610000D03*
|
||||||
|
X39268400Y-51300000D03*
|
||||||
|
D11*
|
||||||
|
X36290000Y-34163000D03*
|
||||||
|
X34290000Y-34163000D03*
|
||||||
|
D12*
|
||||||
|
X14616500Y-28194000D03*
|
||||||
|
X17741500Y-28194000D03*
|
||||||
|
D13*
|
||||||
|
X27075000Y-26542000D03*
|
||||||
|
D14*
|
||||||
|
X28575000Y-26454500D03*
|
||||||
|
D13*
|
||||||
|
X30075000Y-26542000D03*
|
||||||
|
D12*
|
||||||
|
X32981500Y-14605000D03*
|
||||||
|
X36106500Y-14605000D03*
|
||||||
|
D15*
|
||||||
|
X27536500Y-39745000D03*
|
||||||
|
X27536500Y-40545000D03*
|
||||||
|
X27536500Y-41345000D03*
|
||||||
|
X27536500Y-42145000D03*
|
||||||
|
X27536500Y-42945000D03*
|
||||||
|
X27536500Y-43745000D03*
|
||||||
|
X27536500Y-44545000D03*
|
||||||
|
X27536500Y-45345000D03*
|
||||||
|
D16*
|
||||||
|
X28911500Y-46720000D03*
|
||||||
|
X29711500Y-46720000D03*
|
||||||
|
X30511500Y-46720000D03*
|
||||||
|
X31311500Y-46720000D03*
|
||||||
|
X32111500Y-46720000D03*
|
||||||
|
X32911500Y-46720000D03*
|
||||||
|
X33711500Y-46720000D03*
|
||||||
|
X34511500Y-46720000D03*
|
||||||
|
D15*
|
||||||
|
X35886500Y-45345000D03*
|
||||||
|
X35886500Y-44545000D03*
|
||||||
|
X35886500Y-43745000D03*
|
||||||
|
X35886500Y-42945000D03*
|
||||||
|
X35886500Y-42145000D03*
|
||||||
|
X35886500Y-41345000D03*
|
||||||
|
X35886500Y-40545000D03*
|
||||||
|
X35886500Y-39745000D03*
|
||||||
|
D16*
|
||||||
|
X34511500Y-38370000D03*
|
||||||
|
X33711500Y-38370000D03*
|
||||||
|
X32911500Y-38370000D03*
|
||||||
|
X32111500Y-38370000D03*
|
||||||
|
X31311500Y-38370000D03*
|
||||||
|
X30511500Y-38370000D03*
|
||||||
|
X29711500Y-38370000D03*
|
||||||
|
X28911500Y-38370000D03*
|
||||||
|
D17*
|
||||||
|
X18042000Y-36195000D03*
|
||||||
|
X18542000Y-36195000D03*
|
||||||
|
X19042000Y-36195000D03*
|
||||||
|
X19542000Y-36195000D03*
|
||||||
|
X20042000Y-36195000D03*
|
||||||
|
X20042000Y-31795000D03*
|
||||||
|
X19542000Y-31795000D03*
|
||||||
|
X19042000Y-31795000D03*
|
||||||
|
X18542000Y-31795000D03*
|
||||||
|
X18042000Y-31795000D03*
|
||||||
|
D12*
|
||||||
|
X20701000Y-28194000D03*
|
||||||
|
X23826000Y-28194000D03*
|
||||||
|
D11*
|
||||||
|
X36290000Y-32258000D03*
|
||||||
|
X34290000Y-32258000D03*
|
||||||
|
D18*
|
||||||
|
X19304000Y-44816000D03*
|
||||||
|
X19304000Y-46116000D03*
|
||||||
|
X21304000Y-45466000D03*
|
||||||
|
D19*
|
||||||
|
X17018000Y-53467000D03*
|
||||||
|
X13718000Y-50927000D03*
|
||||||
|
X17018000Y-48387000D03*
|
||||||
|
X13718000Y-45847000D03*
|
||||||
|
X17018000Y-43307000D03*
|
||||||
|
D20*
|
||||||
|
X20193000Y-38442500D03*
|
||||||
|
X20193000Y-41567500D03*
|
||||||
|
D21*
|
||||||
|
X39624000Y-47625000D03*
|
||||||
|
X36499000Y-47625000D03*
|
||||||
|
D22*
|
||||||
|
X32893000Y-28448000D03*
|
||||||
|
X32893000Y-25323000D03*
|
||||||
|
D23*
|
||||||
|
X13931500Y-24700000D03*
|
||||||
|
X15201500Y-24700000D03*
|
||||||
|
X16471500Y-24700000D03*
|
||||||
|
X17741500Y-24700000D03*
|
||||||
|
X17741500Y-19750000D03*
|
||||||
|
X16471500Y-19750000D03*
|
||||||
|
X15201500Y-19750000D03*
|
||||||
|
X13931500Y-19750000D03*
|
||||||
|
D24*
|
||||||
|
X27178000Y-30480000D03*
|
||||||
|
X27178000Y-31750000D03*
|
||||||
|
X27178000Y-33020000D03*
|
||||||
|
X27178000Y-34290000D03*
|
||||||
|
X32128000Y-34290000D03*
|
||||||
|
X32128000Y-33020000D03*
|
||||||
|
X32128000Y-31750000D03*
|
||||||
|
X32128000Y-30480000D03*
|
||||||
|
D25*
|
||||||
|
X26797000Y-36195000D03*
|
||||||
|
X28797000Y-36195000D03*
|
||||||
|
D22*
|
||||||
|
X15367000Y-34875000D03*
|
||||||
|
X15367000Y-31750000D03*
|
||||||
|
D10*
|
||||||
|
X20370800Y-54610000D03*
|
||||||
|
X22910800Y-51300000D03*
|
||||||
|
X25450800Y-54610000D03*
|
||||||
|
X27990800Y-51300000D03*
|
||||||
|
X30530800Y-54610000D03*
|
||||||
|
X33070800Y-51300000D03*
|
||||||
|
D26*
|
||||||
|
X17160000Y-38624000D03*
|
||||||
|
X15860000Y-38624000D03*
|
||||||
|
X16510000Y-40624000D03*
|
||||||
|
X14239000Y-38624000D03*
|
||||||
|
X12939000Y-38624000D03*
|
||||||
|
X13589000Y-40624000D03*
|
||||||
|
D27*
|
||||||
|
X33033000Y-18034000D03*
|
||||||
|
X37833000Y-18034000D03*
|
||||||
|
D18*
|
||||||
|
X19336000Y-47483000D03*
|
||||||
|
X19336000Y-48783000D03*
|
||||||
|
X21336000Y-48133000D03*
|
||||||
|
D23*
|
||||||
|
X19939000Y-24700000D03*
|
||||||
|
X21209000Y-24700000D03*
|
||||||
|
X22479000Y-24700000D03*
|
||||||
|
X23749000Y-24700000D03*
|
||||||
|
X23749000Y-19750000D03*
|
||||||
|
X22479000Y-19750000D03*
|
||||||
|
X21209000Y-19750000D03*
|
||||||
|
X19939000Y-19750000D03*
|
||||||
|
D28*
|
||||||
|
X23622000Y-39370000D03*
|
||||||
|
X23622000Y-34170000D03*
|
||||||
|
D29*
|
||||||
|
X45978000Y-52578000D03*
|
||||||
|
X42668000Y-50038000D03*
|
||||||
|
X45978000Y-47498000D03*
|
||||||
|
X42668000Y-44958000D03*
|
||||||
|
X45978000Y-42418000D03*
|
||||||
|
X42668000Y-39878000D03*
|
||||||
|
X45978000Y-37338000D03*
|
||||||
|
X42668000Y-34798000D03*
|
||||||
|
X45978000Y-32258000D03*
|
||||||
|
X42668000Y-29718000D03*
|
||||||
|
X45978000Y-27178000D03*
|
||||||
|
X42668000Y-24638000D03*
|
||||||
|
X45978000Y-22098000D03*
|
||||||
|
X42668000Y-19558000D03*
|
||||||
|
X45978000Y-17018000D03*
|
||||||
|
M02*
|
||||||
1194
squeow_hw/jlcpcb/squeow-F_Silkscreen.gto
Normal file
1194
squeow_hw/jlcpcb/squeow-F_Silkscreen.gto
Normal file
File diff suppressed because it is too large
Load Diff
110
squeow_hw/jlcpcb/squeow-NPTH-drl_map.gbr
Normal file
110
squeow_hw/jlcpcb/squeow-NPTH-drl_map.gbr
Normal file
@@ -0,0 +1,110 @@
|
|||||||
|
%TF.GenerationSoftware,KiCad,Pcbnew,6.0.7+dfsg-3*%
|
||||||
|
%TF.CreationDate,2022-10-05T14:52:24+02:00*%
|
||||||
|
%TF.ProjectId,squeow,73717565-6f77-42e6-9b69-6361645f7063,rev?*%
|
||||||
|
%TF.SameCoordinates,Original*%
|
||||||
|
%TF.FileFunction,Drillmap*%
|
||||||
|
%TF.FilePolarity,Positive*%
|
||||||
|
%FSLAX45Y45*%
|
||||||
|
G04 Gerber Fmt 4.5, Leading zero omitted, Abs format (unit mm)*
|
||||||
|
G04 Created by KiCad (PCBNEW 6.0.7+dfsg-3) date 2022-10-05 14:52:24*
|
||||||
|
%MOMM*%
|
||||||
|
%LPD*%
|
||||||
|
G01*
|
||||||
|
G04 APERTURE LIST*
|
||||||
|
%ADD10C,0.150000*%
|
||||||
|
%ADD11C,0.200000*%
|
||||||
|
G04 APERTURE END LIST*
|
||||||
|
D10*
|
||||||
|
X1206500Y-1206500D02*
|
||||||
|
X4826000Y-1206500D01*
|
||||||
|
X4826000Y-1206500D02*
|
||||||
|
X4826000Y-5651500D01*
|
||||||
|
X4826000Y-5651500D02*
|
||||||
|
X1206500Y-5651500D01*
|
||||||
|
X1206500Y-5651500D02*
|
||||||
|
X1206500Y-1206500D01*
|
||||||
|
D11*
|
||||||
|
X1456619Y-5969476D02*
|
||||||
|
X1456619Y-5769476D01*
|
||||||
|
X1504238Y-5769476D01*
|
||||||
|
X1532809Y-5779000D01*
|
||||||
|
X1551857Y-5798048D01*
|
||||||
|
X1561381Y-5817095D01*
|
||||||
|
X1570905Y-5855190D01*
|
||||||
|
X1570905Y-5883762D01*
|
||||||
|
X1561381Y-5921857D01*
|
||||||
|
X1551857Y-5940905D01*
|
||||||
|
X1532809Y-5959952D01*
|
||||||
|
X1504238Y-5969476D01*
|
||||||
|
X1456619Y-5969476D01*
|
||||||
|
X1656619Y-5969476D02*
|
||||||
|
X1656619Y-5836143D01*
|
||||||
|
X1656619Y-5874238D02*
|
||||||
|
X1666143Y-5855190D01*
|
||||||
|
X1675667Y-5845667D01*
|
||||||
|
X1694714Y-5836143D01*
|
||||||
|
X1713762Y-5836143D01*
|
||||||
|
X1780428Y-5969476D02*
|
||||||
|
X1780428Y-5836143D01*
|
||||||
|
X1780428Y-5769476D02*
|
||||||
|
X1770905Y-5779000D01*
|
||||||
|
X1780428Y-5788524D01*
|
||||||
|
X1789952Y-5779000D01*
|
||||||
|
X1780428Y-5769476D01*
|
||||||
|
X1780428Y-5788524D01*
|
||||||
|
X1904238Y-5969476D02*
|
||||||
|
X1885190Y-5959952D01*
|
||||||
|
X1875667Y-5940905D01*
|
||||||
|
X1875667Y-5769476D01*
|
||||||
|
X2009000Y-5969476D02*
|
||||||
|
X1989952Y-5959952D01*
|
||||||
|
X1980428Y-5940905D01*
|
||||||
|
X1980428Y-5769476D01*
|
||||||
|
X2237571Y-5969476D02*
|
||||||
|
X2237571Y-5769476D01*
|
||||||
|
X2304238Y-5912333D01*
|
||||||
|
X2370905Y-5769476D01*
|
||||||
|
X2370905Y-5969476D01*
|
||||||
|
X2551857Y-5969476D02*
|
||||||
|
X2551857Y-5864714D01*
|
||||||
|
X2542333Y-5845667D01*
|
||||||
|
X2523286Y-5836143D01*
|
||||||
|
X2485190Y-5836143D01*
|
||||||
|
X2466143Y-5845667D01*
|
||||||
|
X2551857Y-5959952D02*
|
||||||
|
X2532810Y-5969476D01*
|
||||||
|
X2485190Y-5969476D01*
|
||||||
|
X2466143Y-5959952D01*
|
||||||
|
X2456619Y-5940905D01*
|
||||||
|
X2456619Y-5921857D01*
|
||||||
|
X2466143Y-5902809D01*
|
||||||
|
X2485190Y-5893286D01*
|
||||||
|
X2532810Y-5893286D01*
|
||||||
|
X2551857Y-5883762D01*
|
||||||
|
X2647095Y-5836143D02*
|
||||||
|
X2647095Y-6036143D01*
|
||||||
|
X2647095Y-5845667D02*
|
||||||
|
X2666143Y-5836143D01*
|
||||||
|
X2704238Y-5836143D01*
|
||||||
|
X2723286Y-5845667D01*
|
||||||
|
X2732810Y-5855190D01*
|
||||||
|
X2742333Y-5874238D01*
|
||||||
|
X2742333Y-5931381D01*
|
||||||
|
X2732810Y-5950428D01*
|
||||||
|
X2723286Y-5959952D01*
|
||||||
|
X2704238Y-5969476D01*
|
||||||
|
X2666143Y-5969476D01*
|
||||||
|
X2647095Y-5959952D01*
|
||||||
|
X2828048Y-5950428D02*
|
||||||
|
X2837571Y-5959952D01*
|
||||||
|
X2828048Y-5969476D01*
|
||||||
|
X2818524Y-5959952D01*
|
||||||
|
X2828048Y-5950428D01*
|
||||||
|
X2828048Y-5969476D01*
|
||||||
|
X2828048Y-5845667D02*
|
||||||
|
X2837571Y-5855190D01*
|
||||||
|
X2828048Y-5864714D01*
|
||||||
|
X2818524Y-5855190D01*
|
||||||
|
X2828048Y-5845667D01*
|
||||||
|
X2828048Y-5864714D01*
|
||||||
|
M02*
|
||||||
13
squeow_hw/jlcpcb/squeow-NPTH.drl
Normal file
13
squeow_hw/jlcpcb/squeow-NPTH.drl
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
M48
|
||||||
|
; DRILL file {KiCad 6.0.7+dfsg-3} date mer 5 ott 2022, 14:52:04
|
||||||
|
; FORMAT={-:-/ absolute / metric / decimal}
|
||||||
|
; #@! TF.CreationDate,2022-10-05T14:52:04+02:00
|
||||||
|
; #@! TF.GenerationSoftware,Kicad,Pcbnew,6.0.7+dfsg-3
|
||||||
|
; #@! TF.FileFunction,NonPlated,1,2,NPTH
|
||||||
|
FMAT,2
|
||||||
|
METRIC
|
||||||
|
%
|
||||||
|
G90
|
||||||
|
G05
|
||||||
|
T0
|
||||||
|
M30
|
||||||
481
squeow_hw/jlcpcb/squeow-PTH-drl_map.gbr
Normal file
481
squeow_hw/jlcpcb/squeow-PTH-drl_map.gbr
Normal file
@@ -0,0 +1,481 @@
|
|||||||
|
%TF.GenerationSoftware,KiCad,Pcbnew,6.0.7+dfsg-3*%
|
||||||
|
%TF.CreationDate,2022-10-05T14:52:24+02:00*%
|
||||||
|
%TF.ProjectId,squeow,73717565-6f77-42e6-9b69-6361645f7063,rev?*%
|
||||||
|
%TF.SameCoordinates,Original*%
|
||||||
|
%TF.FileFunction,Drillmap*%
|
||||||
|
%TF.FilePolarity,Positive*%
|
||||||
|
%FSLAX45Y45*%
|
||||||
|
G04 Gerber Fmt 4.5, Leading zero omitted, Abs format (unit mm)*
|
||||||
|
G04 Created by KiCad (PCBNEW 6.0.7+dfsg-3) date 2022-10-05 14:52:24*
|
||||||
|
%MOMM*%
|
||||||
|
%LPD*%
|
||||||
|
G01*
|
||||||
|
G04 APERTURE LIST*
|
||||||
|
%ADD10C,0.150000*%
|
||||||
|
%ADD11C,0.200000*%
|
||||||
|
%ADD12C,0.040000*%
|
||||||
|
G04 APERTURE END LIST*
|
||||||
|
D10*
|
||||||
|
X1206500Y-1206500D02*
|
||||||
|
X4826000Y-1206500D01*
|
||||||
|
X4826000Y-1206500D02*
|
||||||
|
X4826000Y-5651500D01*
|
||||||
|
X4826000Y-5651500D02*
|
||||||
|
X1206500Y-5651500D01*
|
||||||
|
X1206500Y-5651500D02*
|
||||||
|
X1206500Y-1206500D01*
|
||||||
|
D11*
|
||||||
|
D12*
|
||||||
|
X1491300Y-3929700D02*
|
||||||
|
X1531300Y-3969700D01*
|
||||||
|
X1531300Y-3929700D02*
|
||||||
|
X1491300Y-3969700D01*
|
||||||
|
X1491300Y-5326700D02*
|
||||||
|
X1531300Y-5366700D01*
|
||||||
|
X1531300Y-5326700D02*
|
||||||
|
X1491300Y-5366700D01*
|
||||||
|
X1742760Y-4546920D02*
|
||||||
|
X1782760Y-4586920D01*
|
||||||
|
X1782760Y-4546920D02*
|
||||||
|
X1742760Y-4586920D01*
|
||||||
|
X1754150Y-2215200D02*
|
||||||
|
X1794150Y-2255200D01*
|
||||||
|
X1794150Y-2215200D02*
|
||||||
|
X1754150Y-2255200D01*
|
||||||
|
X1999300Y-4653600D02*
|
||||||
|
X2039300Y-4693600D01*
|
||||||
|
X2039300Y-4653600D02*
|
||||||
|
X1999300Y-4693600D01*
|
||||||
|
X2354900Y-2215200D02*
|
||||||
|
X2394900Y-2255200D01*
|
||||||
|
X2394900Y-2215200D02*
|
||||||
|
X2354900Y-2255200D01*
|
||||||
|
X2586040Y-3861120D02*
|
||||||
|
X2626040Y-3901120D01*
|
||||||
|
X2626040Y-3861120D02*
|
||||||
|
X2586040Y-3901120D01*
|
||||||
|
X2697800Y-3790000D02*
|
||||||
|
X2737800Y-3830000D01*
|
||||||
|
X2737800Y-3790000D02*
|
||||||
|
X2697800Y-3830000D01*
|
||||||
|
X2850200Y-2824800D02*
|
||||||
|
X2890200Y-2864800D01*
|
||||||
|
X2890200Y-2824800D02*
|
||||||
|
X2850200Y-2864800D01*
|
||||||
|
X3269300Y-2380300D02*
|
||||||
|
X3309300Y-2420300D01*
|
||||||
|
X3309300Y-2380300D02*
|
||||||
|
X3269300Y-2420300D01*
|
||||||
|
X3271840Y-4816160D02*
|
||||||
|
X3311840Y-4856160D01*
|
||||||
|
X3311840Y-4816160D02*
|
||||||
|
X3271840Y-4856160D01*
|
||||||
|
X3434400Y-4816160D02*
|
||||||
|
X3474400Y-4856160D01*
|
||||||
|
X3474400Y-4816160D02*
|
||||||
|
X3434400Y-4856160D01*
|
||||||
|
X3955100Y-2951800D02*
|
||||||
|
X3995100Y-2991800D01*
|
||||||
|
X3995100Y-2951800D02*
|
||||||
|
X3955100Y-2991800D01*
|
||||||
|
X4158300Y-2253300D02*
|
||||||
|
X4198300Y-2293300D01*
|
||||||
|
X4198300Y-2253300D02*
|
||||||
|
X4158300Y-2293300D01*
|
||||||
|
X4171000Y-5441000D02*
|
||||||
|
X4211000Y-5481000D01*
|
||||||
|
X4211000Y-5441000D02*
|
||||||
|
X4171000Y-5481000D01*
|
||||||
|
X4310700Y-3713800D02*
|
||||||
|
X4350700Y-3753800D01*
|
||||||
|
X4350700Y-3713800D02*
|
||||||
|
X4310700Y-3753800D01*
|
||||||
|
D11*
|
||||||
|
X1456619Y-5969476D02*
|
||||||
|
X1456619Y-5769476D01*
|
||||||
|
X1504238Y-5769476D01*
|
||||||
|
X1532809Y-5779000D01*
|
||||||
|
X1551857Y-5798048D01*
|
||||||
|
X1561381Y-5817095D01*
|
||||||
|
X1570905Y-5855190D01*
|
||||||
|
X1570905Y-5883762D01*
|
||||||
|
X1561381Y-5921857D01*
|
||||||
|
X1551857Y-5940905D01*
|
||||||
|
X1532809Y-5959952D01*
|
||||||
|
X1504238Y-5969476D01*
|
||||||
|
X1456619Y-5969476D01*
|
||||||
|
X1656619Y-5969476D02*
|
||||||
|
X1656619Y-5836143D01*
|
||||||
|
X1656619Y-5874238D02*
|
||||||
|
X1666143Y-5855190D01*
|
||||||
|
X1675667Y-5845667D01*
|
||||||
|
X1694714Y-5836143D01*
|
||||||
|
X1713762Y-5836143D01*
|
||||||
|
X1780428Y-5969476D02*
|
||||||
|
X1780428Y-5836143D01*
|
||||||
|
X1780428Y-5769476D02*
|
||||||
|
X1770905Y-5779000D01*
|
||||||
|
X1780428Y-5788524D01*
|
||||||
|
X1789952Y-5779000D01*
|
||||||
|
X1780428Y-5769476D01*
|
||||||
|
X1780428Y-5788524D01*
|
||||||
|
X1904238Y-5969476D02*
|
||||||
|
X1885190Y-5959952D01*
|
||||||
|
X1875667Y-5940905D01*
|
||||||
|
X1875667Y-5769476D01*
|
||||||
|
X2009000Y-5969476D02*
|
||||||
|
X1989952Y-5959952D01*
|
||||||
|
X1980428Y-5940905D01*
|
||||||
|
X1980428Y-5769476D01*
|
||||||
|
X2237571Y-5969476D02*
|
||||||
|
X2237571Y-5769476D01*
|
||||||
|
X2304238Y-5912333D01*
|
||||||
|
X2370905Y-5769476D01*
|
||||||
|
X2370905Y-5969476D01*
|
||||||
|
X2551857Y-5969476D02*
|
||||||
|
X2551857Y-5864714D01*
|
||||||
|
X2542333Y-5845667D01*
|
||||||
|
X2523286Y-5836143D01*
|
||||||
|
X2485190Y-5836143D01*
|
||||||
|
X2466143Y-5845667D01*
|
||||||
|
X2551857Y-5959952D02*
|
||||||
|
X2532810Y-5969476D01*
|
||||||
|
X2485190Y-5969476D01*
|
||||||
|
X2466143Y-5959952D01*
|
||||||
|
X2456619Y-5940905D01*
|
||||||
|
X2456619Y-5921857D01*
|
||||||
|
X2466143Y-5902809D01*
|
||||||
|
X2485190Y-5893286D01*
|
||||||
|
X2532810Y-5893286D01*
|
||||||
|
X2551857Y-5883762D01*
|
||||||
|
X2647095Y-5836143D02*
|
||||||
|
X2647095Y-6036143D01*
|
||||||
|
X2647095Y-5845667D02*
|
||||||
|
X2666143Y-5836143D01*
|
||||||
|
X2704238Y-5836143D01*
|
||||||
|
X2723286Y-5845667D01*
|
||||||
|
X2732810Y-5855190D01*
|
||||||
|
X2742333Y-5874238D01*
|
||||||
|
X2742333Y-5931381D01*
|
||||||
|
X2732810Y-5950428D01*
|
||||||
|
X2723286Y-5959952D01*
|
||||||
|
X2704238Y-5969476D01*
|
||||||
|
X2666143Y-5969476D01*
|
||||||
|
X2647095Y-5959952D01*
|
||||||
|
X2828048Y-5950428D02*
|
||||||
|
X2837571Y-5959952D01*
|
||||||
|
X2828048Y-5969476D01*
|
||||||
|
X2818524Y-5959952D01*
|
||||||
|
X2828048Y-5950428D01*
|
||||||
|
X2828048Y-5969476D01*
|
||||||
|
X2828048Y-5845667D02*
|
||||||
|
X2837571Y-5855190D01*
|
||||||
|
X2828048Y-5864714D01*
|
||||||
|
X2818524Y-5855190D01*
|
||||||
|
X2828048Y-5845667D01*
|
||||||
|
X2828048Y-5864714D01*
|
||||||
|
D12*
|
||||||
|
X1159000Y-6279000D02*
|
||||||
|
X1199000Y-6319000D01*
|
||||||
|
X1199000Y-6279000D02*
|
||||||
|
X1159000Y-6319000D01*
|
||||||
|
D11*
|
||||||
|
X1494714Y-6189476D02*
|
||||||
|
X1513762Y-6189476D01*
|
||||||
|
X1532809Y-6199000D01*
|
||||||
|
X1542333Y-6208524D01*
|
||||||
|
X1551857Y-6227571D01*
|
||||||
|
X1561381Y-6265667D01*
|
||||||
|
X1561381Y-6313286D01*
|
||||||
|
X1551857Y-6351381D01*
|
||||||
|
X1542333Y-6370428D01*
|
||||||
|
X1532809Y-6379952D01*
|
||||||
|
X1513762Y-6389476D01*
|
||||||
|
X1494714Y-6389476D01*
|
||||||
|
X1475667Y-6379952D01*
|
||||||
|
X1466143Y-6370428D01*
|
||||||
|
X1456619Y-6351381D01*
|
||||||
|
X1447095Y-6313286D01*
|
||||||
|
X1447095Y-6265667D01*
|
||||||
|
X1456619Y-6227571D01*
|
||||||
|
X1466143Y-6208524D01*
|
||||||
|
X1475667Y-6199000D01*
|
||||||
|
X1494714Y-6189476D01*
|
||||||
|
X1647095Y-6370428D02*
|
||||||
|
X1656619Y-6379952D01*
|
||||||
|
X1647095Y-6389476D01*
|
||||||
|
X1637571Y-6379952D01*
|
||||||
|
X1647095Y-6370428D01*
|
||||||
|
X1647095Y-6389476D01*
|
||||||
|
X1828048Y-6256143D02*
|
||||||
|
X1828048Y-6389476D01*
|
||||||
|
X1780428Y-6179952D02*
|
||||||
|
X1732809Y-6322809D01*
|
||||||
|
X1856619Y-6322809D01*
|
||||||
|
X1970905Y-6189476D02*
|
||||||
|
X1989952Y-6189476D01*
|
||||||
|
X2009000Y-6199000D01*
|
||||||
|
X2018524Y-6208524D01*
|
||||||
|
X2028048Y-6227571D01*
|
||||||
|
X2037571Y-6265667D01*
|
||||||
|
X2037571Y-6313286D01*
|
||||||
|
X2028048Y-6351381D01*
|
||||||
|
X2018524Y-6370428D01*
|
||||||
|
X2009000Y-6379952D01*
|
||||||
|
X1989952Y-6389476D01*
|
||||||
|
X1970905Y-6389476D01*
|
||||||
|
X1951857Y-6379952D01*
|
||||||
|
X1942333Y-6370428D01*
|
||||||
|
X1932809Y-6351381D01*
|
||||||
|
X1923286Y-6313286D01*
|
||||||
|
X1923286Y-6265667D01*
|
||||||
|
X1932809Y-6227571D01*
|
||||||
|
X1942333Y-6208524D01*
|
||||||
|
X1951857Y-6199000D01*
|
||||||
|
X1970905Y-6189476D01*
|
||||||
|
X2161381Y-6189476D02*
|
||||||
|
X2180429Y-6189476D01*
|
||||||
|
X2199476Y-6199000D01*
|
||||||
|
X2209000Y-6208524D01*
|
||||||
|
X2218524Y-6227571D01*
|
||||||
|
X2228048Y-6265667D01*
|
||||||
|
X2228048Y-6313286D01*
|
||||||
|
X2218524Y-6351381D01*
|
||||||
|
X2209000Y-6370428D01*
|
||||||
|
X2199476Y-6379952D01*
|
||||||
|
X2180429Y-6389476D01*
|
||||||
|
X2161381Y-6389476D01*
|
||||||
|
X2142333Y-6379952D01*
|
||||||
|
X2132810Y-6370428D01*
|
||||||
|
X2123286Y-6351381D01*
|
||||||
|
X2113762Y-6313286D01*
|
||||||
|
X2113762Y-6265667D01*
|
||||||
|
X2123286Y-6227571D01*
|
||||||
|
X2132810Y-6208524D01*
|
||||||
|
X2142333Y-6199000D01*
|
||||||
|
X2161381Y-6189476D01*
|
||||||
|
X2313762Y-6389476D02*
|
||||||
|
X2313762Y-6256143D01*
|
||||||
|
X2313762Y-6275190D02*
|
||||||
|
X2323286Y-6265667D01*
|
||||||
|
X2342333Y-6256143D01*
|
||||||
|
X2370905Y-6256143D01*
|
||||||
|
X2389952Y-6265667D01*
|
||||||
|
X2399476Y-6284714D01*
|
||||||
|
X2399476Y-6389476D01*
|
||||||
|
X2399476Y-6284714D02*
|
||||||
|
X2409000Y-6265667D01*
|
||||||
|
X2428048Y-6256143D01*
|
||||||
|
X2456619Y-6256143D01*
|
||||||
|
X2475667Y-6265667D01*
|
||||||
|
X2485190Y-6284714D01*
|
||||||
|
X2485190Y-6389476D01*
|
||||||
|
X2580429Y-6389476D02*
|
||||||
|
X2580429Y-6256143D01*
|
||||||
|
X2580429Y-6275190D02*
|
||||||
|
X2589952Y-6265667D01*
|
||||||
|
X2609000Y-6256143D01*
|
||||||
|
X2637571Y-6256143D01*
|
||||||
|
X2656619Y-6265667D01*
|
||||||
|
X2666143Y-6284714D01*
|
||||||
|
X2666143Y-6389476D01*
|
||||||
|
X2666143Y-6284714D02*
|
||||||
|
X2675667Y-6265667D01*
|
||||||
|
X2694714Y-6256143D01*
|
||||||
|
X2723286Y-6256143D01*
|
||||||
|
X2742333Y-6265667D01*
|
||||||
|
X2751857Y-6284714D01*
|
||||||
|
X2751857Y-6389476D01*
|
||||||
|
X3142333Y-6179952D02*
|
||||||
|
X2970905Y-6437095D01*
|
||||||
|
X3399476Y-6189476D02*
|
||||||
|
X3418524Y-6189476D01*
|
||||||
|
X3437571Y-6199000D01*
|
||||||
|
X3447095Y-6208524D01*
|
||||||
|
X3456619Y-6227571D01*
|
||||||
|
X3466143Y-6265667D01*
|
||||||
|
X3466143Y-6313286D01*
|
||||||
|
X3456619Y-6351381D01*
|
||||||
|
X3447095Y-6370428D01*
|
||||||
|
X3437571Y-6379952D01*
|
||||||
|
X3418524Y-6389476D01*
|
||||||
|
X3399476Y-6389476D01*
|
||||||
|
X3380428Y-6379952D01*
|
||||||
|
X3370905Y-6370428D01*
|
||||||
|
X3361381Y-6351381D01*
|
||||||
|
X3351857Y-6313286D01*
|
||||||
|
X3351857Y-6265667D01*
|
||||||
|
X3361381Y-6227571D01*
|
||||||
|
X3370905Y-6208524D01*
|
||||||
|
X3380428Y-6199000D01*
|
||||||
|
X3399476Y-6189476D01*
|
||||||
|
X3551857Y-6370428D02*
|
||||||
|
X3561381Y-6379952D01*
|
||||||
|
X3551857Y-6389476D01*
|
||||||
|
X3542333Y-6379952D01*
|
||||||
|
X3551857Y-6370428D01*
|
||||||
|
X3551857Y-6389476D01*
|
||||||
|
X3685190Y-6189476D02*
|
||||||
|
X3704238Y-6189476D01*
|
||||||
|
X3723286Y-6199000D01*
|
||||||
|
X3732809Y-6208524D01*
|
||||||
|
X3742333Y-6227571D01*
|
||||||
|
X3751857Y-6265667D01*
|
||||||
|
X3751857Y-6313286D01*
|
||||||
|
X3742333Y-6351381D01*
|
||||||
|
X3732809Y-6370428D01*
|
||||||
|
X3723286Y-6379952D01*
|
||||||
|
X3704238Y-6389476D01*
|
||||||
|
X3685190Y-6389476D01*
|
||||||
|
X3666143Y-6379952D01*
|
||||||
|
X3656619Y-6370428D01*
|
||||||
|
X3647095Y-6351381D01*
|
||||||
|
X3637571Y-6313286D01*
|
||||||
|
X3637571Y-6265667D01*
|
||||||
|
X3647095Y-6227571D01*
|
||||||
|
X3656619Y-6208524D01*
|
||||||
|
X3666143Y-6199000D01*
|
||||||
|
X3685190Y-6189476D01*
|
||||||
|
X3942333Y-6389476D02*
|
||||||
|
X3828048Y-6389476D01*
|
||||||
|
X3885190Y-6389476D02*
|
||||||
|
X3885190Y-6189476D01*
|
||||||
|
X3866143Y-6218048D01*
|
||||||
|
X3847095Y-6237095D01*
|
||||||
|
X3828048Y-6246619D01*
|
||||||
|
X4123286Y-6189476D02*
|
||||||
|
X4028048Y-6189476D01*
|
||||||
|
X4018524Y-6284714D01*
|
||||||
|
X4028048Y-6275190D01*
|
||||||
|
X4047095Y-6265667D01*
|
||||||
|
X4094714Y-6265667D01*
|
||||||
|
X4113762Y-6275190D01*
|
||||||
|
X4123286Y-6284714D01*
|
||||||
|
X4132809Y-6303762D01*
|
||||||
|
X4132809Y-6351381D01*
|
||||||
|
X4123286Y-6370428D01*
|
||||||
|
X4113762Y-6379952D01*
|
||||||
|
X4094714Y-6389476D01*
|
||||||
|
X4047095Y-6389476D01*
|
||||||
|
X4028048Y-6379952D01*
|
||||||
|
X4018524Y-6370428D01*
|
||||||
|
X4199476Y-6189476D02*
|
||||||
|
X4332810Y-6189476D01*
|
||||||
|
X4247095Y-6389476D01*
|
||||||
|
X4399476Y-6189476D02*
|
||||||
|
X4399476Y-6227571D01*
|
||||||
|
X4475667Y-6189476D02*
|
||||||
|
X4475667Y-6227571D01*
|
||||||
|
X4770905Y-6465667D02*
|
||||||
|
X4761381Y-6456143D01*
|
||||||
|
X4742333Y-6427571D01*
|
||||||
|
X4732810Y-6408524D01*
|
||||||
|
X4723286Y-6379952D01*
|
||||||
|
X4713762Y-6332333D01*
|
||||||
|
X4713762Y-6294238D01*
|
||||||
|
X4723286Y-6246619D01*
|
||||||
|
X4732810Y-6218048D01*
|
||||||
|
X4742333Y-6199000D01*
|
||||||
|
X4761381Y-6170428D01*
|
||||||
|
X4770905Y-6160905D01*
|
||||||
|
X4951857Y-6389476D02*
|
||||||
|
X4837571Y-6389476D01*
|
||||||
|
X4894714Y-6389476D02*
|
||||||
|
X4894714Y-6189476D01*
|
||||||
|
X4875667Y-6218048D01*
|
||||||
|
X4856619Y-6237095D01*
|
||||||
|
X4837571Y-6246619D01*
|
||||||
|
X5123286Y-6189476D02*
|
||||||
|
X5085190Y-6189476D01*
|
||||||
|
X5066143Y-6199000D01*
|
||||||
|
X5056619Y-6208524D01*
|
||||||
|
X5037571Y-6237095D01*
|
||||||
|
X5028048Y-6275190D01*
|
||||||
|
X5028048Y-6351381D01*
|
||||||
|
X5037571Y-6370428D01*
|
||||||
|
X5047095Y-6379952D01*
|
||||||
|
X5066143Y-6389476D01*
|
||||||
|
X5104238Y-6389476D01*
|
||||||
|
X5123286Y-6379952D01*
|
||||||
|
X5132810Y-6370428D01*
|
||||||
|
X5142333Y-6351381D01*
|
||||||
|
X5142333Y-6303762D01*
|
||||||
|
X5132810Y-6284714D01*
|
||||||
|
X5123286Y-6275190D01*
|
||||||
|
X5104238Y-6265667D01*
|
||||||
|
X5066143Y-6265667D01*
|
||||||
|
X5047095Y-6275190D01*
|
||||||
|
X5037571Y-6284714D01*
|
||||||
|
X5028048Y-6303762D01*
|
||||||
|
X5380429Y-6389476D02*
|
||||||
|
X5380429Y-6189476D01*
|
||||||
|
X5466143Y-6389476D02*
|
||||||
|
X5466143Y-6284714D01*
|
||||||
|
X5456619Y-6265667D01*
|
||||||
|
X5437571Y-6256143D01*
|
||||||
|
X5409000Y-6256143D01*
|
||||||
|
X5389952Y-6265667D01*
|
||||||
|
X5380429Y-6275190D01*
|
||||||
|
X5589952Y-6389476D02*
|
||||||
|
X5570905Y-6379952D01*
|
||||||
|
X5561381Y-6370428D01*
|
||||||
|
X5551857Y-6351381D01*
|
||||||
|
X5551857Y-6294238D01*
|
||||||
|
X5561381Y-6275190D01*
|
||||||
|
X5570905Y-6265667D01*
|
||||||
|
X5589952Y-6256143D01*
|
||||||
|
X5618524Y-6256143D01*
|
||||||
|
X5637571Y-6265667D01*
|
||||||
|
X5647095Y-6275190D01*
|
||||||
|
X5656619Y-6294238D01*
|
||||||
|
X5656619Y-6351381D01*
|
||||||
|
X5647095Y-6370428D01*
|
||||||
|
X5637571Y-6379952D01*
|
||||||
|
X5618524Y-6389476D01*
|
||||||
|
X5589952Y-6389476D01*
|
||||||
|
X5770905Y-6389476D02*
|
||||||
|
X5751857Y-6379952D01*
|
||||||
|
X5742333Y-6360905D01*
|
||||||
|
X5742333Y-6189476D01*
|
||||||
|
X5923286Y-6379952D02*
|
||||||
|
X5904238Y-6389476D01*
|
||||||
|
X5866143Y-6389476D01*
|
||||||
|
X5847095Y-6379952D01*
|
||||||
|
X5837571Y-6360905D01*
|
||||||
|
X5837571Y-6284714D01*
|
||||||
|
X5847095Y-6265667D01*
|
||||||
|
X5866143Y-6256143D01*
|
||||||
|
X5904238Y-6256143D01*
|
||||||
|
X5923286Y-6265667D01*
|
||||||
|
X5932809Y-6284714D01*
|
||||||
|
X5932809Y-6303762D01*
|
||||||
|
X5837571Y-6322809D01*
|
||||||
|
X6009000Y-6379952D02*
|
||||||
|
X6028048Y-6389476D01*
|
||||||
|
X6066143Y-6389476D01*
|
||||||
|
X6085190Y-6379952D01*
|
||||||
|
X6094714Y-6360905D01*
|
||||||
|
X6094714Y-6351381D01*
|
||||||
|
X6085190Y-6332333D01*
|
||||||
|
X6066143Y-6322809D01*
|
||||||
|
X6037571Y-6322809D01*
|
||||||
|
X6018524Y-6313286D01*
|
||||||
|
X6009000Y-6294238D01*
|
||||||
|
X6009000Y-6284714D01*
|
||||||
|
X6018524Y-6265667D01*
|
||||||
|
X6037571Y-6256143D01*
|
||||||
|
X6066143Y-6256143D01*
|
||||||
|
X6085190Y-6265667D01*
|
||||||
|
X6161381Y-6465667D02*
|
||||||
|
X6170905Y-6456143D01*
|
||||||
|
X6189952Y-6427571D01*
|
||||||
|
X6199476Y-6408524D01*
|
||||||
|
X6209000Y-6379952D01*
|
||||||
|
X6218524Y-6332333D01*
|
||||||
|
X6218524Y-6294238D01*
|
||||||
|
X6209000Y-6246619D01*
|
||||||
|
X6199476Y-6218048D01*
|
||||||
|
X6189952Y-6199000D01*
|
||||||
|
X6170905Y-6170428D01*
|
||||||
|
X6161381Y-6160905D01*
|
||||||
|
M02*
|
||||||
32
squeow_hw/jlcpcb/squeow-PTH.drl
Normal file
32
squeow_hw/jlcpcb/squeow-PTH.drl
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
M48
|
||||||
|
; DRILL file {KiCad 6.0.7+dfsg-3} date mer 5 ott 2022, 14:52:04
|
||||||
|
; FORMAT={-:-/ absolute / metric / decimal}
|
||||||
|
; #@! TF.CreationDate,2022-10-05T14:52:04+02:00
|
||||||
|
; #@! TF.GenerationSoftware,Kicad,Pcbnew,6.0.7+dfsg-3
|
||||||
|
; #@! TF.FileFunction,Plated,1,2,PTH
|
||||||
|
FMAT,2
|
||||||
|
METRIC
|
||||||
|
; #@! TA.AperFunction,Plated,PTH,ViaDrill
|
||||||
|
T1C0.400
|
||||||
|
%
|
||||||
|
G90
|
||||||
|
G05
|
||||||
|
T1
|
||||||
|
X15.113Y-39.497
|
||||||
|
X15.113Y-53.467
|
||||||
|
X17.628Y-45.669
|
||||||
|
X17.741Y-22.352
|
||||||
|
X20.193Y-46.736
|
||||||
|
X23.749Y-22.352
|
||||||
|
X26.06Y-38.811
|
||||||
|
X27.178Y-38.1
|
||||||
|
X28.702Y-28.448
|
||||||
|
X32.893Y-24.003
|
||||||
|
X32.918Y-48.362
|
||||||
|
X34.544Y-48.362
|
||||||
|
X39.751Y-29.718
|
||||||
|
X41.783Y-22.733
|
||||||
|
X41.91Y-54.61
|
||||||
|
X43.307Y-37.338
|
||||||
|
T0
|
||||||
|
M30
|
||||||
BIN
squeow_hw/squeow-backups/squeow-2022-10-04_134218.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2022-10-04_134218.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2022-10-04_141706.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2022-10-04_141706.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2022-10-05_104657.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2022-10-05_104657.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2022-10-05_140432.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2022-10-05_140432.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2022-10-05_145900.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2022-10-05_145900.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2022-10-07_223214.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2022-10-07_223214.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2022-10-10_123446.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2022-10-10_123446.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2022-10-10_124608.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2022-10-10_124608.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2022-10-28_154142.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2022-10-28_154142.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2022-10-28_192108.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2022-10-28_192108.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2022-11-11_211649.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2022-11-11_211649.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2022-11-11_212452.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2022-11-11_212452.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2022-11-11_214509.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2022-11-11_214509.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2022-11-13_012818.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2022-11-13_012818.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2022-11-15_134144.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2022-11-15_134144.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2022-11-15_134823.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2022-11-15_134823.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2022-11-18_190348.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2022-11-18_190348.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2022-11-18_202540.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2022-11-18_202540.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2023-01-01_011521.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2023-01-01_011521.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2023-03-15_221901.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2023-03-15_221901.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2023-06-30_110458.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2023-06-30_110458.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2023-06-30_111541.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2023-06-30_111541.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2023-06-30_185236.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2023-06-30_185236.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2023-06-30_185854.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2023-06-30_185854.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2023-06-30_201736.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2023-06-30_201736.zip
Normal file
Binary file not shown.
BIN
squeow_hw/squeow-backups/squeow-2023-07-01_181420.zip
Normal file
BIN
squeow_hw/squeow-backups/squeow-2023-07-01_181420.zip
Normal file
Binary file not shown.
3901
squeow_hw/squeow.kicad_pcb
Normal file
3901
squeow_hw/squeow.kicad_pcb
Normal file
File diff suppressed because it is too large
Load Diff
77
squeow_hw/squeow.kicad_prl
Normal file
77
squeow_hw/squeow.kicad_prl
Normal file
@@ -0,0 +1,77 @@
|
|||||||
|
{
|
||||||
|
"board": {
|
||||||
|
"active_layer": 0,
|
||||||
|
"active_layer_preset": "",
|
||||||
|
"auto_track_width": false,
|
||||||
|
"hidden_netclasses": [],
|
||||||
|
"hidden_nets": [],
|
||||||
|
"high_contrast_mode": 0,
|
||||||
|
"net_color_mode": 1,
|
||||||
|
"opacity": {
|
||||||
|
"images": 0.6,
|
||||||
|
"pads": 1.0,
|
||||||
|
"tracks": 1.0,
|
||||||
|
"vias": 1.0,
|
||||||
|
"zones": 0.6
|
||||||
|
},
|
||||||
|
"ratsnest_display_mode": 0,
|
||||||
|
"selection_filter": {
|
||||||
|
"dimensions": true,
|
||||||
|
"footprints": true,
|
||||||
|
"graphics": true,
|
||||||
|
"keepouts": true,
|
||||||
|
"lockedItems": true,
|
||||||
|
"otherItems": true,
|
||||||
|
"pads": true,
|
||||||
|
"text": true,
|
||||||
|
"tracks": true,
|
||||||
|
"vias": true,
|
||||||
|
"zones": true
|
||||||
|
},
|
||||||
|
"visible_items": [
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
2,
|
||||||
|
3,
|
||||||
|
4,
|
||||||
|
5,
|
||||||
|
8,
|
||||||
|
9,
|
||||||
|
10,
|
||||||
|
11,
|
||||||
|
12,
|
||||||
|
13,
|
||||||
|
14,
|
||||||
|
15,
|
||||||
|
16,
|
||||||
|
17,
|
||||||
|
18,
|
||||||
|
19,
|
||||||
|
20,
|
||||||
|
21,
|
||||||
|
22,
|
||||||
|
23,
|
||||||
|
24,
|
||||||
|
25,
|
||||||
|
26,
|
||||||
|
27,
|
||||||
|
28,
|
||||||
|
29,
|
||||||
|
30,
|
||||||
|
32,
|
||||||
|
33,
|
||||||
|
34,
|
||||||
|
35,
|
||||||
|
36
|
||||||
|
],
|
||||||
|
"visible_layers": "0001020_ffffffff",
|
||||||
|
"zone_display_mode": 0
|
||||||
|
},
|
||||||
|
"meta": {
|
||||||
|
"filename": "squeow.kicad_prl",
|
||||||
|
"version": 3
|
||||||
|
},
|
||||||
|
"project": {
|
||||||
|
"files": []
|
||||||
|
}
|
||||||
|
}
|
||||||
507
squeow_hw/squeow.kicad_pro
Normal file
507
squeow_hw/squeow.kicad_pro
Normal file
@@ -0,0 +1,507 @@
|
|||||||
|
{
|
||||||
|
"board": {
|
||||||
|
"3dviewports": [],
|
||||||
|
"design_settings": {
|
||||||
|
"defaults": {
|
||||||
|
"board_outline_line_width": 0.09999999999999999,
|
||||||
|
"copper_line_width": 0.19999999999999998,
|
||||||
|
"copper_text_italic": false,
|
||||||
|
"copper_text_size_h": 1.5,
|
||||||
|
"copper_text_size_v": 1.5,
|
||||||
|
"copper_text_thickness": 0.3,
|
||||||
|
"copper_text_upright": false,
|
||||||
|
"courtyard_line_width": 0.049999999999999996,
|
||||||
|
"dimension_precision": 4,
|
||||||
|
"dimension_units": 3,
|
||||||
|
"dimensions": {
|
||||||
|
"arrow_length": 1270000,
|
||||||
|
"extension_offset": 500000,
|
||||||
|
"keep_text_aligned": true,
|
||||||
|
"suppress_zeroes": false,
|
||||||
|
"text_position": 0,
|
||||||
|
"units_format": 1
|
||||||
|
},
|
||||||
|
"fab_line_width": 0.09999999999999999,
|
||||||
|
"fab_text_italic": false,
|
||||||
|
"fab_text_size_h": 1.0,
|
||||||
|
"fab_text_size_v": 1.0,
|
||||||
|
"fab_text_thickness": 0.15,
|
||||||
|
"fab_text_upright": false,
|
||||||
|
"other_line_width": 0.15,
|
||||||
|
"other_text_italic": false,
|
||||||
|
"other_text_size_h": 1.0,
|
||||||
|
"other_text_size_v": 1.0,
|
||||||
|
"other_text_thickness": 0.15,
|
||||||
|
"other_text_upright": false,
|
||||||
|
"pads": {
|
||||||
|
"drill": 0.762,
|
||||||
|
"height": 1.524,
|
||||||
|
"width": 1.524
|
||||||
|
},
|
||||||
|
"silk_line_width": 0.15,
|
||||||
|
"silk_text_italic": false,
|
||||||
|
"silk_text_size_h": 1.0,
|
||||||
|
"silk_text_size_v": 1.0,
|
||||||
|
"silk_text_thickness": 0.15,
|
||||||
|
"silk_text_upright": false,
|
||||||
|
"zones": {
|
||||||
|
"45_degree_only": false,
|
||||||
|
"min_clearance": 0.508
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"diff_pair_dimensions": [
|
||||||
|
{
|
||||||
|
"gap": 0.0,
|
||||||
|
"via_gap": 0.0,
|
||||||
|
"width": 0.0
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"drc_exclusions": [],
|
||||||
|
"meta": {
|
||||||
|
"version": 2
|
||||||
|
},
|
||||||
|
"rule_severities": {
|
||||||
|
"annular_width": "error",
|
||||||
|
"clearance": "error",
|
||||||
|
"connection_width": "warning",
|
||||||
|
"copper_edge_clearance": "error",
|
||||||
|
"copper_sliver": "warning",
|
||||||
|
"courtyards_overlap": "error",
|
||||||
|
"diff_pair_gap_out_of_range": "error",
|
||||||
|
"diff_pair_uncoupled_length_too_long": "error",
|
||||||
|
"drill_out_of_range": "error",
|
||||||
|
"duplicate_footprints": "warning",
|
||||||
|
"extra_footprint": "warning",
|
||||||
|
"footprint": "error",
|
||||||
|
"footprint_type_mismatch": "error",
|
||||||
|
"hole_clearance": "error",
|
||||||
|
"hole_near_hole": "error",
|
||||||
|
"invalid_outline": "error",
|
||||||
|
"isolated_copper": "warning",
|
||||||
|
"item_on_disabled_layer": "error",
|
||||||
|
"items_not_allowed": "error",
|
||||||
|
"length_out_of_range": "error",
|
||||||
|
"lib_footprint_issues": "warning",
|
||||||
|
"lib_footprint_mismatch": "warning",
|
||||||
|
"malformed_courtyard": "error",
|
||||||
|
"microvia_drill_out_of_range": "error",
|
||||||
|
"missing_courtyard": "ignore",
|
||||||
|
"missing_footprint": "warning",
|
||||||
|
"net_conflict": "warning",
|
||||||
|
"npth_inside_courtyard": "ignore",
|
||||||
|
"padstack": "error",
|
||||||
|
"pth_inside_courtyard": "ignore",
|
||||||
|
"shorting_items": "error",
|
||||||
|
"silk_edge_clearance": "warning",
|
||||||
|
"silk_over_copper": "warning",
|
||||||
|
"silk_overlap": "warning",
|
||||||
|
"skew_out_of_range": "error",
|
||||||
|
"solder_mask_bridge": "error",
|
||||||
|
"starved_thermal": "error",
|
||||||
|
"text_height": "warning",
|
||||||
|
"text_thickness": "warning",
|
||||||
|
"through_hole_pad_without_hole": "error",
|
||||||
|
"too_many_vias": "error",
|
||||||
|
"track_dangling": "warning",
|
||||||
|
"track_width": "error",
|
||||||
|
"tracks_crossing": "error",
|
||||||
|
"unconnected_items": "error",
|
||||||
|
"unresolved_variable": "error",
|
||||||
|
"via_dangling": "warning",
|
||||||
|
"zones_intersect": "error"
|
||||||
|
},
|
||||||
|
"rules": {
|
||||||
|
"allow_blind_buried_vias": false,
|
||||||
|
"allow_microvias": false,
|
||||||
|
"max_error": 0.005,
|
||||||
|
"min_clearance": 0.0,
|
||||||
|
"min_connection": 0.0,
|
||||||
|
"min_copper_edge_clearance": 0.0,
|
||||||
|
"min_hole_clearance": 0.25,
|
||||||
|
"min_hole_to_hole": 0.25,
|
||||||
|
"min_microvia_diameter": 0.19999999999999998,
|
||||||
|
"min_microvia_drill": 0.09999999999999999,
|
||||||
|
"min_resolved_spokes": 2,
|
||||||
|
"min_silk_clearance": 0.0,
|
||||||
|
"min_text_height": 0.7999999999999999,
|
||||||
|
"min_text_thickness": 0.08,
|
||||||
|
"min_through_hole_diameter": 0.3,
|
||||||
|
"min_track_width": 0.19999999999999998,
|
||||||
|
"min_via_annular_width": 0.049999999999999996,
|
||||||
|
"min_via_diameter": 0.39999999999999997,
|
||||||
|
"solder_mask_clearance": 0.0,
|
||||||
|
"solder_mask_min_width": 0.0,
|
||||||
|
"solder_mask_to_copper_clearance": 0.0,
|
||||||
|
"use_height_for_length_calcs": true
|
||||||
|
},
|
||||||
|
"teardrop_options": [
|
||||||
|
{
|
||||||
|
"td_allow_use_two_tracks": true,
|
||||||
|
"td_curve_segcount": 5,
|
||||||
|
"td_on_pad_in_zone": false,
|
||||||
|
"td_onpadsmd": true,
|
||||||
|
"td_onroundshapesonly": false,
|
||||||
|
"td_ontrackend": false,
|
||||||
|
"td_onviapad": true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"teardrop_parameters": [
|
||||||
|
{
|
||||||
|
"td_curve_segcount": 0,
|
||||||
|
"td_height_ratio": 1.0,
|
||||||
|
"td_length_ratio": 0.5,
|
||||||
|
"td_maxheight": 2.0,
|
||||||
|
"td_maxlen": 1.0,
|
||||||
|
"td_target_name": "td_round_shape",
|
||||||
|
"td_width_to_size_filter_ratio": 0.9
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"td_curve_segcount": 0,
|
||||||
|
"td_height_ratio": 1.0,
|
||||||
|
"td_length_ratio": 0.5,
|
||||||
|
"td_maxheight": 2.0,
|
||||||
|
"td_maxlen": 1.0,
|
||||||
|
"td_target_name": "td_rect_shape",
|
||||||
|
"td_width_to_size_filter_ratio": 0.9
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"td_curve_segcount": 0,
|
||||||
|
"td_height_ratio": 1.0,
|
||||||
|
"td_length_ratio": 0.5,
|
||||||
|
"td_maxheight": 2.0,
|
||||||
|
"td_maxlen": 1.0,
|
||||||
|
"td_target_name": "td_track_end",
|
||||||
|
"td_width_to_size_filter_ratio": 0.9
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"track_widths": [
|
||||||
|
0.0,
|
||||||
|
0.2,
|
||||||
|
0.5,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"via_dimensions": [
|
||||||
|
{
|
||||||
|
"diameter": 0.0,
|
||||||
|
"drill": 0.0
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"zones_allow_external_fillets": false,
|
||||||
|
"zones_use_no_outline": true
|
||||||
|
},
|
||||||
|
"layer_presets": [],
|
||||||
|
"viewports": []
|
||||||
|
},
|
||||||
|
"boards": [],
|
||||||
|
"cvpcb": {
|
||||||
|
"equivalence_files": []
|
||||||
|
},
|
||||||
|
"erc": {
|
||||||
|
"erc_exclusions": [],
|
||||||
|
"meta": {
|
||||||
|
"version": 0
|
||||||
|
},
|
||||||
|
"pin_map": [
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
2,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
1,
|
||||||
|
2,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"rule_severities": {
|
||||||
|
"bus_definition_conflict": "error",
|
||||||
|
"bus_entry_needed": "error",
|
||||||
|
"bus_to_bus_conflict": "error",
|
||||||
|
"bus_to_net_conflict": "error",
|
||||||
|
"conflicting_netclasses": "error",
|
||||||
|
"different_unit_footprint": "error",
|
||||||
|
"different_unit_net": "error",
|
||||||
|
"duplicate_reference": "error",
|
||||||
|
"duplicate_sheet_names": "error",
|
||||||
|
"endpoint_off_grid": "warning",
|
||||||
|
"extra_units": "error",
|
||||||
|
"global_label_dangling": "warning",
|
||||||
|
"hier_label_mismatch": "error",
|
||||||
|
"label_dangling": "error",
|
||||||
|
"lib_symbol_issues": "warning",
|
||||||
|
"missing_bidi_pin": "warning",
|
||||||
|
"missing_input_pin": "warning",
|
||||||
|
"missing_power_pin": "error",
|
||||||
|
"missing_unit": "warning",
|
||||||
|
"multiple_net_names": "warning",
|
||||||
|
"net_not_bus_member": "warning",
|
||||||
|
"no_connect_connected": "warning",
|
||||||
|
"no_connect_dangling": "warning",
|
||||||
|
"pin_not_connected": "error",
|
||||||
|
"pin_not_driven": "error",
|
||||||
|
"pin_to_pin": "warning",
|
||||||
|
"power_pin_not_driven": "error",
|
||||||
|
"similar_labels": "warning",
|
||||||
|
"simulation_model_issue": "ignore",
|
||||||
|
"unannotated": "error",
|
||||||
|
"unit_value_mismatch": "error",
|
||||||
|
"unresolved_variable": "error",
|
||||||
|
"wire_dangling": "error"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"libraries": {
|
||||||
|
"pinned_footprint_libs": [],
|
||||||
|
"pinned_symbol_libs": []
|
||||||
|
},
|
||||||
|
"meta": {
|
||||||
|
"filename": "squeow.kicad_pro",
|
||||||
|
"version": 1
|
||||||
|
},
|
||||||
|
"net_settings": {
|
||||||
|
"classes": [
|
||||||
|
{
|
||||||
|
"bus_width": 12,
|
||||||
|
"clearance": 0.2,
|
||||||
|
"diff_pair_gap": 0.25,
|
||||||
|
"diff_pair_via_gap": 0.25,
|
||||||
|
"diff_pair_width": 0.2,
|
||||||
|
"line_style": 0,
|
||||||
|
"microvia_diameter": 0.3,
|
||||||
|
"microvia_drill": 0.1,
|
||||||
|
"name": "Default",
|
||||||
|
"pcb_color": "rgba(0, 0, 0, 0.000)",
|
||||||
|
"schematic_color": "rgba(0, 0, 0, 0.000)",
|
||||||
|
"track_width": 0.25,
|
||||||
|
"via_diameter": 0.8,
|
||||||
|
"via_drill": 0.4,
|
||||||
|
"wire_width": 6
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"meta": {
|
||||||
|
"version": 3
|
||||||
|
},
|
||||||
|
"net_colors": null,
|
||||||
|
"netclass_assignments": null,
|
||||||
|
"netclass_patterns": []
|
||||||
|
},
|
||||||
|
"pcbnew": {
|
||||||
|
"last_paths": {
|
||||||
|
"gencad": "",
|
||||||
|
"idf": "",
|
||||||
|
"netlist": "",
|
||||||
|
"specctra_dsn": "",
|
||||||
|
"step": "",
|
||||||
|
"vrml": ""
|
||||||
|
},
|
||||||
|
"page_layout_descr_file": ""
|
||||||
|
},
|
||||||
|
"schematic": {
|
||||||
|
"annotate_start_num": 0,
|
||||||
|
"drawing": {
|
||||||
|
"dashed_lines_dash_length_ratio": 12.0,
|
||||||
|
"dashed_lines_gap_length_ratio": 3.0,
|
||||||
|
"default_line_thickness": 6.0,
|
||||||
|
"default_text_size": 50.0,
|
||||||
|
"field_names": [],
|
||||||
|
"intersheets_ref_own_page": false,
|
||||||
|
"intersheets_ref_prefix": "",
|
||||||
|
"intersheets_ref_short": false,
|
||||||
|
"intersheets_ref_show": false,
|
||||||
|
"intersheets_ref_suffix": "",
|
||||||
|
"junction_size_choice": 3,
|
||||||
|
"label_size_ratio": 0.375,
|
||||||
|
"pin_symbol_size": 25.0,
|
||||||
|
"text_offset_ratio": 0.15
|
||||||
|
},
|
||||||
|
"legacy_lib_dir": "",
|
||||||
|
"legacy_lib_list": [],
|
||||||
|
"meta": {
|
||||||
|
"version": 1
|
||||||
|
},
|
||||||
|
"net_format_name": "",
|
||||||
|
"ngspice": {
|
||||||
|
"fix_include_paths": true,
|
||||||
|
"fix_passive_vals": false,
|
||||||
|
"meta": {
|
||||||
|
"version": 0
|
||||||
|
},
|
||||||
|
"model_mode": 0,
|
||||||
|
"workbook_filename": ""
|
||||||
|
},
|
||||||
|
"page_layout_descr_file": "",
|
||||||
|
"plot_directory": "",
|
||||||
|
"spice_adjust_passive_values": false,
|
||||||
|
"spice_current_sheet_as_root": false,
|
||||||
|
"spice_external_command": "spice \"%I\"",
|
||||||
|
"spice_model_current_sheet_as_root": true,
|
||||||
|
"spice_save_all_currents": false,
|
||||||
|
"spice_save_all_voltages": false,
|
||||||
|
"subpart_first_id": 65,
|
||||||
|
"subpart_id_separator": 0
|
||||||
|
},
|
||||||
|
"sheets": [
|
||||||
|
[
|
||||||
|
"dd809985-7087-414a-8be4-5f927ae2bdb6",
|
||||||
|
""
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"text_variables": {}
|
||||||
|
}
|
||||||
3923
squeow_hw/squeow.kicad_sch
Normal file
3923
squeow_hw/squeow.kicad_sch
Normal file
File diff suppressed because it is too large
Load Diff
2067
squeow_mod/_autosave-squeow_mod.kicad_pcb
Normal file
2067
squeow_mod/_autosave-squeow_mod.kicad_pcb
Normal file
File diff suppressed because it is too large
Load Diff
435
squeow_mod/fp-info-cache
Normal file
435
squeow_mod/fp-info-cache
Normal file
@@ -0,0 +1,435 @@
|
|||||||
|
103351009360878
|
||||||
|
Resistor_SMD
|
||||||
|
R_0201_0603Metric
|
||||||
|
Resistor SMD 0201 (0603 Metric), square (rectangular) end terminal, IPC_7351 nominal, (Body size source: https://www.vishay.com/docs/20052/crcw0201e3.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor
|
||||||
|
0
|
||||||
|
4
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_0201_0603Metric_Pad0.64x0.40mm_HandSolder
|
||||||
|
Resistor SMD 0201 (0603 Metric), square (rectangular) end terminal, IPC_7351 nominal with elongated pad for handsoldering. (Body size source: https://www.vishay.com/docs/20052/crcw0201e3.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor handsolder
|
||||||
|
0
|
||||||
|
4
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_0402_1005Metric
|
||||||
|
Resistor SMD 0402 (1005 Metric), square (rectangular) end terminal, IPC_7351 nominal, (Body size source: IPC-SM-782 page 72, https://www.pcb-3d.com/wordpress/wp-content/uploads/ipc-sm-782a_amendment_1_and_2.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_0402_1005Metric_Pad0.72x0.64mm_HandSolder
|
||||||
|
Resistor SMD 0402 (1005 Metric), square (rectangular) end terminal, IPC_7351 nominal with elongated pad for handsoldering. (Body size source: IPC-SM-782 page 72, https://www.pcb-3d.com/wordpress/wp-content/uploads/ipc-sm-782a_amendment_1_and_2.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor handsolder
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_0603_1608Metric
|
||||||
|
Resistor SMD 0603 (1608 Metric), square (rectangular) end terminal, IPC_7351 nominal, (Body size source: IPC-SM-782 page 72, https://www.pcb-3d.com/wordpress/wp-content/uploads/ipc-sm-782a_amendment_1_and_2.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_0603_1608Metric_Pad0.98x0.95mm_HandSolder
|
||||||
|
Resistor SMD 0603 (1608 Metric), square (rectangular) end terminal, IPC_7351 nominal with elongated pad for handsoldering. (Body size source: IPC-SM-782 page 72, https://www.pcb-3d.com/wordpress/wp-content/uploads/ipc-sm-782a_amendment_1_and_2.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor handsolder
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_0612_1632Metric
|
||||||
|
Resistor SMD 0612 (1632 Metric), square (rectangular) end terminal, IPC_7351 nominal, (Body size source: https://www.vishay.com/docs/20019/rcwe.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_0612_1632Metric_Pad1.18x3.40mm_HandSolder
|
||||||
|
Resistor SMD 0612 (1632 Metric), square (rectangular) end terminal, IPC_7351 nominal with elongated pad for handsoldering. (Body size source: https://www.vishay.com/docs/20019/rcwe.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor handsolder
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_0805_2012Metric
|
||||||
|
Resistor SMD 0805 (2012 Metric), square (rectangular) end terminal, IPC_7351 nominal, (Body size source: IPC-SM-782 page 72, https://www.pcb-3d.com/wordpress/wp-content/uploads/ipc-sm-782a_amendment_1_and_2.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_0805_2012Metric_Pad1.20x1.40mm_HandSolder
|
||||||
|
Resistor SMD 0805 (2012 Metric), square (rectangular) end terminal, IPC_7351 nominal with elongated pad for handsoldering. (Body size source: IPC-SM-782 page 72, https://www.pcb-3d.com/wordpress/wp-content/uploads/ipc-sm-782a_amendment_1_and_2.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor handsolder
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_0815_2038Metric
|
||||||
|
Resistor SMD 0815 (2038 Metric), square (rectangular) end terminal, IPC_7351 nominal, (Body size source: https://www.susumu.co.jp/common/pdf/n_catalog_partition07_en.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_0815_2038Metric_Pad1.20x4.05mm_HandSolder
|
||||||
|
Resistor SMD 0815 (2038 Metric), square (rectangular) end terminal, IPC_7351 nominal with elongated pad for handsoldering. (Body size source: https://www.susumu.co.jp/common/pdf/n_catalog_partition07_en.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor handsolder
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_01005_0402Metric
|
||||||
|
Resistor SMD 01005 (0402 Metric), square (rectangular) end terminal, IPC_7351 nominal, (Body size source: http://www.vishay.com/docs/20056/crcw01005e3.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor
|
||||||
|
0
|
||||||
|
4
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_01005_0402Metric_Pad0.57x0.30mm_HandSolder
|
||||||
|
Resistor SMD 01005 (0402 Metric), square (rectangular) end terminal, IPC_7351 nominal with elongated pad for handsoldering. (Body size source: http://www.vishay.com/docs/20056/crcw01005e3.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor handsolder
|
||||||
|
0
|
||||||
|
4
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_1020_2550Metric
|
||||||
|
Resistor SMD 1020 (2550 Metric), square (rectangular) end terminal, IPC_7351 nominal, (Body size source: https://www.vishay.com/docs/20019/rcwe.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_1020_2550Metric_Pad1.33x5.20mm_HandSolder
|
||||||
|
Resistor SMD 1020 (2550 Metric), square (rectangular) end terminal, IPC_7351 nominal with elongated pad for handsoldering. (Body size source: https://www.vishay.com/docs/20019/rcwe.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor handsolder
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_1206_3216Metric
|
||||||
|
Resistor SMD 1206 (3216 Metric), square (rectangular) end terminal, IPC_7351 nominal, (Body size source: IPC-SM-782 page 72, https://www.pcb-3d.com/wordpress/wp-content/uploads/ipc-sm-782a_amendment_1_and_2.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_1206_3216Metric_Pad1.30x1.75mm_HandSolder
|
||||||
|
Resistor SMD 1206 (3216 Metric), square (rectangular) end terminal, IPC_7351 nominal with elongated pad for handsoldering. (Body size source: IPC-SM-782 page 72, https://www.pcb-3d.com/wordpress/wp-content/uploads/ipc-sm-782a_amendment_1_and_2.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor handsolder
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_1210_3225Metric
|
||||||
|
Resistor SMD 1210 (3225 Metric), square (rectangular) end terminal, IPC_7351 nominal, (Body size source: IPC-SM-782 page 72, https://www.pcb-3d.com/wordpress/wp-content/uploads/ipc-sm-782a_amendment_1_and_2.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_1210_3225Metric_Pad1.30x2.65mm_HandSolder
|
||||||
|
Resistor SMD 1210 (3225 Metric), square (rectangular) end terminal, IPC_7351 nominal with elongated pad for handsoldering. (Body size source: IPC-SM-782 page 72, https://www.pcb-3d.com/wordpress/wp-content/uploads/ipc-sm-782a_amendment_1_and_2.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor handsolder
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_1218_3246Metric
|
||||||
|
Resistor SMD 1218 (3246 Metric), square (rectangular) end terminal, IPC_7351 nominal, (Body size source: https://www.vishay.com/docs/20035/dcrcwe3.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_1218_3246Metric_Pad1.22x4.75mm_HandSolder
|
||||||
|
Resistor SMD 1218 (3246 Metric), square (rectangular) end terminal, IPC_7351 nominal with elongated pad for handsoldering. (Body size source: https://www.vishay.com/docs/20035/dcrcwe3.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor handsolder
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_1812_4532Metric
|
||||||
|
Resistor SMD 1812 (4532 Metric), square (rectangular) end terminal, IPC_7351 nominal, (Body size source: https://www.nikhef.nl/pub/departments/mt/projects/detectorR_D/dtddice/ERJ2G.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_1812_4532Metric_Pad1.30x3.40mm_HandSolder
|
||||||
|
Resistor SMD 1812 (4532 Metric), square (rectangular) end terminal, IPC_7351 nominal with elongated pad for handsoldering. (Body size source: https://www.nikhef.nl/pub/departments/mt/projects/detectorR_D/dtddice/ERJ2G.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor handsolder
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_2010_5025Metric
|
||||||
|
Resistor SMD 2010 (5025 Metric), square (rectangular) end terminal, IPC_7351 nominal, (Body size source: IPC-SM-782 page 72, https://www.pcb-3d.com/wordpress/wp-content/uploads/ipc-sm-782a_amendment_1_and_2.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_2010_5025Metric_Pad1.40x2.65mm_HandSolder
|
||||||
|
Resistor SMD 2010 (5025 Metric), square (rectangular) end terminal, IPC_7351 nominal with elongated pad for handsoldering. (Body size source: IPC-SM-782 page 72, https://www.pcb-3d.com/wordpress/wp-content/uploads/ipc-sm-782a_amendment_1_and_2.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor handsolder
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_2512_6332Metric
|
||||||
|
Resistor SMD 2512 (6332 Metric), square (rectangular) end terminal, IPC_7351 nominal, (Body size source: IPC-SM-782 page 72, https://www.pcb-3d.com/wordpress/wp-content/uploads/ipc-sm-782a_amendment_1_and_2.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_2512_6332Metric_Pad1.40x3.35mm_HandSolder
|
||||||
|
Resistor SMD 2512 (6332 Metric), square (rectangular) end terminal, IPC_7351 nominal with elongated pad for handsoldering. (Body size source: IPC-SM-782 page 72, https://www.pcb-3d.com/wordpress/wp-content/uploads/ipc-sm-782a_amendment_1_and_2.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor handsolder
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_2816_7142Metric
|
||||||
|
Resistor SMD 2816 (7142 Metric), square (rectangular) end terminal, IPC_7351 nominal, (Body size from: https://www.vishay.com/docs/30100/wsl.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_2816_7142Metric_Pad3.20x4.45mm_HandSolder
|
||||||
|
Resistor SMD 2816 (7142 Metric), square (rectangular) end terminal, IPC_7351 nominal with elongated pad for handsoldering. (Body size from: https://www.vishay.com/docs/30100/wsl.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor handsolder
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_4020_10251Metric
|
||||||
|
Resistor SMD 4020 (10251 Metric), square (rectangular) end terminal, IPC_7351 nominal, (Body size source: http://datasheet.octopart.com/HVC0603T5004FET-Ohmite-datasheet-26699797.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_4020_10251Metric_Pad1.65x5.30mm_HandSolder
|
||||||
|
Resistor SMD 4020 (10251 Metric), square (rectangular) end terminal, IPC_7351 nominal with elongated pad for handsoldering. (Body size source: http://datasheet.octopart.com/HVC0603T5004FET-Ohmite-datasheet-26699797.pdf), generated with kicad-footprint-generator
|
||||||
|
resistor handsolder
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_Array_Concave_2x0603
|
||||||
|
Thick Film Chip Resistor Array, Wave soldering, Vishay CRA06P (see cra06p.pdf)
|
||||||
|
resistor array
|
||||||
|
0
|
||||||
|
4
|
||||||
|
4
|
||||||
|
Resistor_SMD
|
||||||
|
R_Array_Concave_4x0402
|
||||||
|
Thick Film Chip Resistor Array, Wave soldering, Vishay CRA04P (see cra04p.pdf)
|
||||||
|
resistor array
|
||||||
|
0
|
||||||
|
8
|
||||||
|
8
|
||||||
|
Resistor_SMD
|
||||||
|
R_Array_Concave_4x0603
|
||||||
|
Thick Film Chip Resistor Array, Wave soldering, Vishay CRA06P (see cra06p.pdf)
|
||||||
|
resistor array
|
||||||
|
0
|
||||||
|
8
|
||||||
|
8
|
||||||
|
Resistor_SMD
|
||||||
|
R_Array_Convex_2x0402
|
||||||
|
Chip Resistor Network, ROHM MNR02 (see mnr_g.pdf)
|
||||||
|
resistor array
|
||||||
|
0
|
||||||
|
4
|
||||||
|
4
|
||||||
|
Resistor_SMD
|
||||||
|
R_Array_Convex_2x0603
|
||||||
|
Chip Resistor Network, ROHM MNR12 (see mnr_g.pdf)
|
||||||
|
resistor array
|
||||||
|
0
|
||||||
|
4
|
||||||
|
4
|
||||||
|
Resistor_SMD
|
||||||
|
R_Array_Convex_2x0606
|
||||||
|
Precision Thin Film Chip Resistor Array, VISHAY (see http://www.vishay.com/docs/28770/acasat.pdf)
|
||||||
|
resistor array
|
||||||
|
0
|
||||||
|
4
|
||||||
|
4
|
||||||
|
Resistor_SMD
|
||||||
|
R_Array_Convex_2x1206
|
||||||
|
Chip Resistor Network, ROHM MNR32 (see mnr_g.pdf)
|
||||||
|
resistor array
|
||||||
|
0
|
||||||
|
4
|
||||||
|
4
|
||||||
|
Resistor_SMD
|
||||||
|
R_Array_Convex_4x0402
|
||||||
|
Chip Resistor Network, ROHM MNR04 (see mnr_g.pdf)
|
||||||
|
resistor array
|
||||||
|
0
|
||||||
|
8
|
||||||
|
8
|
||||||
|
Resistor_SMD
|
||||||
|
R_Array_Convex_4x0603
|
||||||
|
Chip Resistor Network, ROHM MNR14 (see mnr_g.pdf)
|
||||||
|
resistor array
|
||||||
|
0
|
||||||
|
8
|
||||||
|
8
|
||||||
|
Resistor_SMD
|
||||||
|
R_Array_Convex_4x0612
|
||||||
|
Precision Thin Film Chip Resistor Array, VISHAY (see http://www.vishay.com/docs/28770/acasat.pdf)
|
||||||
|
resistor array
|
||||||
|
0
|
||||||
|
8
|
||||||
|
8
|
||||||
|
Resistor_SMD
|
||||||
|
R_Array_Convex_4x1206
|
||||||
|
Chip Resistor Network, ROHM MNR34 (see mnr_g.pdf)
|
||||||
|
resistor array
|
||||||
|
0
|
||||||
|
8
|
||||||
|
8
|
||||||
|
Resistor_SMD
|
||||||
|
R_Array_Convex_5x0603
|
||||||
|
Chip Resistor Network, ROHM MNR15 (see mnr_g.pdf)
|
||||||
|
resistor array
|
||||||
|
0
|
||||||
|
10
|
||||||
|
10
|
||||||
|
Resistor_SMD
|
||||||
|
R_Array_Convex_5x1206
|
||||||
|
Chip Resistor Network, ROHM MNR35 (see mnr_g.pdf)
|
||||||
|
resistor array
|
||||||
|
0
|
||||||
|
10
|
||||||
|
10
|
||||||
|
Resistor_SMD
|
||||||
|
R_Array_Convex_8x0602
|
||||||
|
Chip Resistor Network, ROHM MNR18 (see mnr_g.pdf)
|
||||||
|
resistor array
|
||||||
|
0
|
||||||
|
16
|
||||||
|
16
|
||||||
|
Resistor_SMD
|
||||||
|
R_Cat16-2
|
||||||
|
SMT resistor net, Bourns CAT16 series, 2 way
|
||||||
|
SMT resistor net Bourns CAT16 series 2 way
|
||||||
|
0
|
||||||
|
4
|
||||||
|
4
|
||||||
|
Resistor_SMD
|
||||||
|
R_Cat16-4
|
||||||
|
SMT resistor net, Bourns CAT16 series, 4 way
|
||||||
|
SMT resistor net Bourns CAT16 series 4 way
|
||||||
|
0
|
||||||
|
8
|
||||||
|
8
|
||||||
|
Resistor_SMD
|
||||||
|
R_Cat16-8
|
||||||
|
SMT resistor net, Bourns CAT16 series, 8 way
|
||||||
|
SMT resistor net Bourns CAT16 series 8 way
|
||||||
|
0
|
||||||
|
16
|
||||||
|
16
|
||||||
|
Resistor_SMD
|
||||||
|
R_MELF_MMB-0207
|
||||||
|
Resistor, MELF, MMB-0207, http://www.vishay.com/docs/28713/melfprof.pdf
|
||||||
|
MELF Resistor
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_MicroMELF_MMU-0102
|
||||||
|
Resistor, MicroMELF, MMU-0102, http://www.vishay.com/docs/28713/melfprof.pdf
|
||||||
|
MicroMELF Resistor
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_MiniMELF_MMA-0204
|
||||||
|
Resistor, MiniMELF, MMA-0204, http://www.vishay.com/docs/28713/melfprof.pdf
|
||||||
|
MiniMELF Resistor
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_Shunt_Ohmite_LVK12
|
||||||
|
4 contact shunt resistor
|
||||||
|
shunt resistor 4 contacts
|
||||||
|
0
|
||||||
|
4
|
||||||
|
4
|
||||||
|
Resistor_SMD
|
||||||
|
R_Shunt_Ohmite_LVK20
|
||||||
|
4 contacts shunt resistor, https://www.ohmite.com/assets/docs/res_lvk.pdf
|
||||||
|
4 contacts resistor smd
|
||||||
|
0
|
||||||
|
4
|
||||||
|
4
|
||||||
|
Resistor_SMD
|
||||||
|
R_Shunt_Ohmite_LVK24
|
||||||
|
4 contacts shunt resistor,https://www.ohmite.com/assets/docs/res_lvk.pdf
|
||||||
|
4 contacts resistor smd
|
||||||
|
0
|
||||||
|
4
|
||||||
|
4
|
||||||
|
Resistor_SMD
|
||||||
|
R_Shunt_Ohmite_LVK25
|
||||||
|
4 contacts shunt resistor,https://www.ohmite.com/assets/docs/res_lvk.pdf
|
||||||
|
4 contacts resistor smd
|
||||||
|
0
|
||||||
|
4
|
||||||
|
4
|
||||||
|
Resistor_SMD
|
||||||
|
R_Shunt_Vishay_WSK2512_6332Metric_T1.19mm
|
||||||
|
Shunt Resistor SMD 2512 (6332 Metric), 2.6mm thick, Vishay WKS2512, Terminal length (T) 1.19mm, 5 to 200 milli Ohm (http://http://www.vishay.com/docs/30108/wsk.pdf)
|
||||||
|
resistor shunt WSK2512
|
||||||
|
0
|
||||||
|
4
|
||||||
|
4
|
||||||
|
Resistor_SMD
|
||||||
|
R_Shunt_Vishay_WSK2512_6332Metric_T2.21mm
|
||||||
|
Shunt Resistor SMD 2512 (6332 Metric), 2.6mm thick, Vishay WKS2512, Terminal length (T) 2.21mm, 1 to 4.9 milli Ohm (http://http://www.vishay.com/docs/30108/wsk.pdf)
|
||||||
|
resistor shunt WSK2512
|
||||||
|
0
|
||||||
|
4
|
||||||
|
4
|
||||||
|
Resistor_SMD
|
||||||
|
R_Shunt_Vishay_WSK2512_6332Metric_T2.66mm
|
||||||
|
Shunt Resistor SMD 2512 (6332 Metric), 2.6mm thick, Vishay WKS2512, Terminal length (T) 2.66mm, 0.5 to 0.99 milli Ohm (http://http://www.vishay.com/docs/30108/wsk.pdf)
|
||||||
|
resistor shunt WSK2512
|
||||||
|
0
|
||||||
|
4
|
||||||
|
4
|
||||||
|
Resistor_SMD
|
||||||
|
R_Shunt_Vishay_WSKW0612
|
||||||
|
https://www.vishay.com/docs/30332/wskw0612.pdf
|
||||||
|
4-Terminal SMD Shunt
|
||||||
|
0
|
||||||
|
4
|
||||||
|
4
|
||||||
|
Resistor_SMD
|
||||||
|
R_Shunt_Vishay_WSR2_WSR3
|
||||||
|
Power Metal Strip Resistors 0.005 to 0.2, https://www.vishay.com/docs/30101/wsr.pdf
|
||||||
|
SMD Shunt Resistor
|
||||||
|
0
|
||||||
|
2
|
||||||
|
2
|
||||||
|
Resistor_SMD
|
||||||
|
R_Shunt_Vishay_WSR2_WSR3_KelvinConnection
|
||||||
|
Power Metal Strip Resistors 0.005 to 0.2, https://www.vishay.com/docs/30101/wsr.pdf
|
||||||
|
SMD Shunt Resistor
|
||||||
|
0
|
||||||
|
4
|
||||||
|
2
|
||||||
129
squeow_mod/squeow_mod-B_Cu.gbr
Normal file
129
squeow_mod/squeow_mod-B_Cu.gbr
Normal file
@@ -0,0 +1,129 @@
|
|||||||
|
%TF.GenerationSoftware,KiCad,Pcbnew,7.0.5+dfsg-2*%
|
||||||
|
%TF.CreationDate,2023-06-30T15:01:52+02:00*%
|
||||||
|
%TF.ProjectId,squeow_mod,73717565-6f77-45f6-9d6f-642e6b696361,rev?*%
|
||||||
|
%TF.SameCoordinates,PX2cce564PYfbec30*%
|
||||||
|
%TF.FileFunction,Copper,L2,Bot*%
|
||||||
|
%TF.FilePolarity,Positive*%
|
||||||
|
%FSLAX46Y46*%
|
||||||
|
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
|
||||||
|
G04 Created by KiCad (PCBNEW 7.0.5+dfsg-2) date 2023-06-30 15:01:52*
|
||||||
|
%MOMM*%
|
||||||
|
%LPD*%
|
||||||
|
G01*
|
||||||
|
G04 APERTURE LIST*
|
||||||
|
%TA.AperFunction,ComponentPad*%
|
||||||
|
%ADD10O,2.000000X1.905000*%
|
||||||
|
%TD*%
|
||||||
|
%TA.AperFunction,ComponentPad*%
|
||||||
|
%ADD11R,2.000000X1.905000*%
|
||||||
|
%TD*%
|
||||||
|
%TA.AperFunction,ComponentPad*%
|
||||||
|
%ADD12O,1.700000X1.700000*%
|
||||||
|
%TD*%
|
||||||
|
%TA.AperFunction,ComponentPad*%
|
||||||
|
%ADD13R,1.700000X1.700000*%
|
||||||
|
%TD*%
|
||||||
|
G04 APERTURE END LIST*
|
||||||
|
D10*
|
||||||
|
%TO.P,D1,3,K*%
|
||||||
|
%TO.N,Net-(C1-Pad2)*%
|
||||||
|
X3977500Y-56515000D03*
|
||||||
|
%TO.P,D1,2,A*%
|
||||||
|
%TO.N,Net-(D1-Pad2)*%
|
||||||
|
X3977500Y-59055000D03*
|
||||||
|
D11*
|
||||||
|
%TO.P,D1,1,K*%
|
||||||
|
%TO.N,Net-(D1-Pad1)*%
|
||||||
|
X3977500Y-61595000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.P,Q3,3,S*%
|
||||||
|
%TO.N,Net-(C3-Pad2)*%
|
||||||
|
X3977500Y-24130000D03*
|
||||||
|
%TO.P,Q3,2,D*%
|
||||||
|
%TO.N,Net-(C2-Pad2)*%
|
||||||
|
X3977500Y-26670000D03*
|
||||||
|
D11*
|
||||||
|
%TO.P,Q3,1,G*%
|
||||||
|
%TO.N,Net-(Q3-Pad1)*%
|
||||||
|
X3977500Y-29210000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.P,D3,3,K*%
|
||||||
|
%TO.N,Net-(C3-Pad2)*%
|
||||||
|
X3977500Y-13335000D03*
|
||||||
|
%TO.P,D3,2,A*%
|
||||||
|
%TO.N,Net-(D3-Pad2)*%
|
||||||
|
X3977500Y-15875000D03*
|
||||||
|
D11*
|
||||||
|
%TO.P,D3,1,K*%
|
||||||
|
%TO.N,Net-(D2-Pad2)*%
|
||||||
|
X3977500Y-18415000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.P,D2,3,K*%
|
||||||
|
%TO.N,Net-(C2-Pad2)*%
|
||||||
|
X3977500Y-34925000D03*
|
||||||
|
%TO.P,D2,2,A*%
|
||||||
|
%TO.N,Net-(D2-Pad2)*%
|
||||||
|
X3977500Y-37465000D03*
|
||||||
|
D11*
|
||||||
|
%TO.P,D2,1,K*%
|
||||||
|
%TO.N,Net-(D1-Pad2)*%
|
||||||
|
X3977500Y-40005000D03*
|
||||||
|
%TD*%
|
||||||
|
D12*
|
||||||
|
%TO.P,J6,5,Pin_5*%
|
||||||
|
%TO.N,Net-(J6-Pad5)*%
|
||||||
|
X24137500Y-33655000D03*
|
||||||
|
%TO.P,J6,4,Pin_4*%
|
||||||
|
%TO.N,Net-(J6-Pad4)*%
|
||||||
|
X24137500Y-36195000D03*
|
||||||
|
%TO.P,J6,3,Pin_3*%
|
||||||
|
%TO.N,Net-(J6-Pad3)*%
|
||||||
|
X24137500Y-38735000D03*
|
||||||
|
%TO.P,J6,2,Pin_2*%
|
||||||
|
%TO.N,Net-(J6-Pad2)*%
|
||||||
|
X24137500Y-41275000D03*
|
||||||
|
D13*
|
||||||
|
%TO.P,J6,1,Pin_1*%
|
||||||
|
%TO.N,Net-(J6-Pad1)*%
|
||||||
|
X24137500Y-43815000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.P,Q1,3,S*%
|
||||||
|
%TO.N,Net-(C1-Pad2)*%
|
||||||
|
X3977500Y-67310000D03*
|
||||||
|
%TO.P,Q1,2,D*%
|
||||||
|
%TO.N,Net-(D1-Pad1)*%
|
||||||
|
X3977500Y-69850000D03*
|
||||||
|
D11*
|
||||||
|
%TO.P,Q1,1,G*%
|
||||||
|
%TO.N,Net-(Q1-Pad1)*%
|
||||||
|
X3977500Y-72390000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.P,Q2,3,S*%
|
||||||
|
%TO.N,Net-(C2-Pad2)*%
|
||||||
|
X3977500Y-45720000D03*
|
||||||
|
%TO.P,Q2,2,D*%
|
||||||
|
%TO.N,Net-(C1-Pad2)*%
|
||||||
|
X3977500Y-48260000D03*
|
||||||
|
D11*
|
||||||
|
%TO.P,Q2,1,G*%
|
||||||
|
%TO.N,Net-(Q2-Pad1)*%
|
||||||
|
X3977500Y-50800000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.P,Q4,3,S*%
|
||||||
|
%TO.N,Net-(C4-Pad2)*%
|
||||||
|
X3977500Y-2540000D03*
|
||||||
|
%TO.P,Q4,2,D*%
|
||||||
|
%TO.N,Net-(C3-Pad2)*%
|
||||||
|
X3977500Y-5080000D03*
|
||||||
|
D11*
|
||||||
|
%TO.P,Q4,1,G*%
|
||||||
|
%TO.N,Net-(Q4-Pad1)*%
|
||||||
|
X3977500Y-7620000D03*
|
||||||
|
%TD*%
|
||||||
|
M02*
|
||||||
92
squeow_mod/squeow_mod-B_Mask.gbr
Normal file
92
squeow_mod/squeow_mod-B_Mask.gbr
Normal file
@@ -0,0 +1,92 @@
|
|||||||
|
%TF.GenerationSoftware,KiCad,Pcbnew,7.0.5+dfsg-2*%
|
||||||
|
%TF.CreationDate,2023-06-30T15:01:54+02:00*%
|
||||||
|
%TF.ProjectId,squeow_mod,73717565-6f77-45f6-9d6f-642e6b696361,rev?*%
|
||||||
|
%TF.SameCoordinates,PX2cce564PYfbec30*%
|
||||||
|
%TF.FileFunction,Soldermask,Bot*%
|
||||||
|
%TF.FilePolarity,Negative*%
|
||||||
|
%FSLAX46Y46*%
|
||||||
|
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
|
||||||
|
G04 Created by KiCad (PCBNEW 7.0.5+dfsg-2) date 2023-06-30 15:01:54*
|
||||||
|
%MOMM*%
|
||||||
|
%LPD*%
|
||||||
|
G01*
|
||||||
|
G04 APERTURE LIST*
|
||||||
|
%ADD10O,2.000000X1.905000*%
|
||||||
|
%ADD11R,2.000000X1.905000*%
|
||||||
|
%ADD12O,3.500000X3.500000*%
|
||||||
|
%ADD13O,1.700000X1.700000*%
|
||||||
|
%ADD14R,1.700000X1.700000*%
|
||||||
|
G04 APERTURE END LIST*
|
||||||
|
D10*
|
||||||
|
%TO.C,D1*%
|
||||||
|
X3977500Y-56515000D03*
|
||||||
|
X3977500Y-59055000D03*
|
||||||
|
D11*
|
||||||
|
X3977500Y-61595000D03*
|
||||||
|
D12*
|
||||||
|
X-11822500Y-59055000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.C,Q3*%
|
||||||
|
X3977500Y-24130000D03*
|
||||||
|
X3977500Y-26670000D03*
|
||||||
|
D11*
|
||||||
|
X3977500Y-29210000D03*
|
||||||
|
D12*
|
||||||
|
X-11822500Y-26670000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.C,D3*%
|
||||||
|
X3977500Y-13335000D03*
|
||||||
|
X3977500Y-15875000D03*
|
||||||
|
D11*
|
||||||
|
X3977500Y-18415000D03*
|
||||||
|
D12*
|
||||||
|
X-11822500Y-15875000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.C,D2*%
|
||||||
|
X3977500Y-34925000D03*
|
||||||
|
X3977500Y-37465000D03*
|
||||||
|
D11*
|
||||||
|
X3977500Y-40005000D03*
|
||||||
|
D12*
|
||||||
|
X-11822500Y-37465000D03*
|
||||||
|
%TD*%
|
||||||
|
D13*
|
||||||
|
%TO.C,J6*%
|
||||||
|
X24137500Y-33655000D03*
|
||||||
|
X24137500Y-36195000D03*
|
||||||
|
X24137500Y-38735000D03*
|
||||||
|
X24137500Y-41275000D03*
|
||||||
|
D14*
|
||||||
|
X24137500Y-43815000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.C,Q1*%
|
||||||
|
X3977500Y-67310000D03*
|
||||||
|
X3977500Y-69850000D03*
|
||||||
|
D11*
|
||||||
|
X3977500Y-72390000D03*
|
||||||
|
D12*
|
||||||
|
X-11822500Y-69850000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.C,Q2*%
|
||||||
|
X3977500Y-45720000D03*
|
||||||
|
X3977500Y-48260000D03*
|
||||||
|
D11*
|
||||||
|
X3977500Y-50800000D03*
|
||||||
|
D12*
|
||||||
|
X-11822500Y-48260000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.C,Q4*%
|
||||||
|
X3977500Y-2540000D03*
|
||||||
|
X3977500Y-5080000D03*
|
||||||
|
D11*
|
||||||
|
X3977500Y-7620000D03*
|
||||||
|
D12*
|
||||||
|
X-11822500Y-5080000D03*
|
||||||
|
%TD*%
|
||||||
|
M02*
|
||||||
15
squeow_mod/squeow_mod-B_Paste.gbr
Normal file
15
squeow_mod/squeow_mod-B_Paste.gbr
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
%TF.GenerationSoftware,KiCad,Pcbnew,7.0.5+dfsg-2*%
|
||||||
|
%TF.CreationDate,2023-06-30T15:01:53+02:00*%
|
||||||
|
%TF.ProjectId,squeow_mod,73717565-6f77-45f6-9d6f-642e6b696361,rev?*%
|
||||||
|
%TF.SameCoordinates,PX2cce564PYfbec30*%
|
||||||
|
%TF.FileFunction,Paste,Bot*%
|
||||||
|
%TF.FilePolarity,Positive*%
|
||||||
|
%FSLAX46Y46*%
|
||||||
|
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
|
||||||
|
G04 Created by KiCad (PCBNEW 7.0.5+dfsg-2) date 2023-06-30 15:01:53*
|
||||||
|
%MOMM*%
|
||||||
|
%LPD*%
|
||||||
|
G01*
|
||||||
|
G04 APERTURE LIST*
|
||||||
|
G04 APERTURE END LIST*
|
||||||
|
M02*
|
||||||
15
squeow_mod/squeow_mod-B_Silkscreen.gbr
Normal file
15
squeow_mod/squeow_mod-B_Silkscreen.gbr
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
%TF.GenerationSoftware,KiCad,Pcbnew,7.0.5+dfsg-2*%
|
||||||
|
%TF.CreationDate,2023-06-30T15:01:53+02:00*%
|
||||||
|
%TF.ProjectId,squeow_mod,73717565-6f77-45f6-9d6f-642e6b696361,rev?*%
|
||||||
|
%TF.SameCoordinates,PX2cce564PYfbec30*%
|
||||||
|
%TF.FileFunction,Legend,Bot*%
|
||||||
|
%TF.FilePolarity,Positive*%
|
||||||
|
%FSLAX46Y46*%
|
||||||
|
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
|
||||||
|
G04 Created by KiCad (PCBNEW 7.0.5+dfsg-2) date 2023-06-30 15:01:53*
|
||||||
|
%MOMM*%
|
||||||
|
%LPD*%
|
||||||
|
G01*
|
||||||
|
G04 APERTURE LIST*
|
||||||
|
G04 APERTURE END LIST*
|
||||||
|
M02*
|
||||||
23
squeow_mod/squeow_mod-Edge_Cuts.gbr
Normal file
23
squeow_mod/squeow_mod-Edge_Cuts.gbr
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
%TF.GenerationSoftware,KiCad,Pcbnew,7.0.5+dfsg-2*%
|
||||||
|
%TF.CreationDate,2023-06-30T15:01:54+02:00*%
|
||||||
|
%TF.ProjectId,squeow_mod,73717565-6f77-45f6-9d6f-642e6b696361,rev?*%
|
||||||
|
%TF.SameCoordinates,PX2cce564PYfbec30*%
|
||||||
|
%TF.FileFunction,Profile,NP*%
|
||||||
|
%FSLAX46Y46*%
|
||||||
|
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
|
||||||
|
G04 Created by KiCad (PCBNEW 7.0.5+dfsg-2) date 2023-06-30 15:01:54*
|
||||||
|
%MOMM*%
|
||||||
|
%LPD*%
|
||||||
|
G01*
|
||||||
|
G04 APERTURE LIST*
|
||||||
|
%TA.AperFunction,Profile*%
|
||||||
|
%ADD10C,0.100000*%
|
||||||
|
%TD*%
|
||||||
|
G04 APERTURE END LIST*
|
||||||
|
D10*
|
||||||
|
X0Y0D02*
|
||||||
|
X26035000Y0D01*
|
||||||
|
X26035000Y-79375000D01*
|
||||||
|
X0Y-79375000D01*
|
||||||
|
X0Y0D01*
|
||||||
|
M02*
|
||||||
719
squeow_mod/squeow_mod-F_Cu.gbr
Normal file
719
squeow_mod/squeow_mod-F_Cu.gbr
Normal file
@@ -0,0 +1,719 @@
|
|||||||
|
%TF.GenerationSoftware,KiCad,Pcbnew,7.0.5+dfsg-2*%
|
||||||
|
%TF.CreationDate,2023-06-30T15:01:52+02:00*%
|
||||||
|
%TF.ProjectId,squeow_mod,73717565-6f77-45f6-9d6f-642e6b696361,rev?*%
|
||||||
|
%TF.SameCoordinates,PX2cce564PYfbec30*%
|
||||||
|
%TF.FileFunction,Copper,L1,Top*%
|
||||||
|
%TF.FilePolarity,Positive*%
|
||||||
|
%FSLAX46Y46*%
|
||||||
|
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
|
||||||
|
G04 Created by KiCad (PCBNEW 7.0.5+dfsg-2) date 2023-06-30 15:01:52*
|
||||||
|
%MOMM*%
|
||||||
|
%LPD*%
|
||||||
|
G01*
|
||||||
|
G04 APERTURE LIST*
|
||||||
|
G04 Aperture macros list*
|
||||||
|
%AMRoundRect*
|
||||||
|
0 Rectangle with rounded corners*
|
||||||
|
0 $1 Rounding radius*
|
||||||
|
0 $2 $3 $4 $5 $6 $7 $8 $9 X,Y pos of 4 corners*
|
||||||
|
0 Add a 4 corners polygon primitive as box body*
|
||||||
|
4,1,4,$2,$3,$4,$5,$6,$7,$8,$9,$2,$3,0*
|
||||||
|
0 Add four circle primitives for the rounded corners*
|
||||||
|
1,1,$1+$1,$2,$3*
|
||||||
|
1,1,$1+$1,$4,$5*
|
||||||
|
1,1,$1+$1,$6,$7*
|
||||||
|
1,1,$1+$1,$8,$9*
|
||||||
|
0 Add four rect primitives between the rounded corners*
|
||||||
|
20,1,$1+$1,$2,$3,$4,$5,0*
|
||||||
|
20,1,$1+$1,$4,$5,$6,$7,0*
|
||||||
|
20,1,$1+$1,$6,$7,$8,$9,0*
|
||||||
|
20,1,$1+$1,$8,$9,$2,$3,0*%
|
||||||
|
G04 Aperture macros list end*
|
||||||
|
%TA.AperFunction,ComponentPad*%
|
||||||
|
%ADD10O,2.000000X1.905000*%
|
||||||
|
%TD*%
|
||||||
|
%TA.AperFunction,ComponentPad*%
|
||||||
|
%ADD11R,2.000000X1.905000*%
|
||||||
|
%TD*%
|
||||||
|
%TA.AperFunction,SMDPad,CuDef*%
|
||||||
|
%ADD12C,4.000000*%
|
||||||
|
%TD*%
|
||||||
|
%TA.AperFunction,SMDPad,CuDef*%
|
||||||
|
%ADD13R,2.160000X0.640000*%
|
||||||
|
%TD*%
|
||||||
|
%TA.AperFunction,SMDPad,CuDef*%
|
||||||
|
%ADD14RoundRect,0.250000X-0.400000X-0.625000X0.400000X-0.625000X0.400000X0.625000X-0.400000X0.625000X0*%
|
||||||
|
%TD*%
|
||||||
|
%TA.AperFunction,SMDPad,CuDef*%
|
||||||
|
%ADD15RoundRect,0.250000X1.450000X-0.537500X1.450000X0.537500X-1.450000X0.537500X-1.450000X-0.537500X0*%
|
||||||
|
%TD*%
|
||||||
|
%TA.AperFunction,ComponentPad*%
|
||||||
|
%ADD16O,1.700000X1.700000*%
|
||||||
|
%TD*%
|
||||||
|
%TA.AperFunction,ComponentPad*%
|
||||||
|
%ADD17R,1.700000X1.700000*%
|
||||||
|
%TD*%
|
||||||
|
%TA.AperFunction,SMDPad,CuDef*%
|
||||||
|
%ADD18R,0.600000X0.450000*%
|
||||||
|
%TD*%
|
||||||
|
%TA.AperFunction,SMDPad,CuDef*%
|
||||||
|
%ADD19RoundRect,0.250000X-0.400000X-1.450000X0.400000X-1.450000X0.400000X1.450000X-0.400000X1.450000X0*%
|
||||||
|
%TD*%
|
||||||
|
%TA.AperFunction,Conductor*%
|
||||||
|
%ADD20C,1.000000*%
|
||||||
|
%TD*%
|
||||||
|
%TA.AperFunction,Conductor*%
|
||||||
|
%ADD21C,2.000000*%
|
||||||
|
%TD*%
|
||||||
|
G04 APERTURE END LIST*
|
||||||
|
D10*
|
||||||
|
%TO.P,D1,3,K*%
|
||||||
|
%TO.N,Net-(C1-Pad2)*%
|
||||||
|
X3977500Y-56515000D03*
|
||||||
|
%TO.P,D1,2,A*%
|
||||||
|
%TO.N,Net-(D1-Pad2)*%
|
||||||
|
X3977500Y-59055000D03*
|
||||||
|
D11*
|
||||||
|
%TO.P,D1,1,K*%
|
||||||
|
%TO.N,Net-(D1-Pad1)*%
|
||||||
|
X3977500Y-61595000D03*
|
||||||
|
%TD*%
|
||||||
|
D12*
|
||||||
|
%TO.P,J3,1,Pin_1*%
|
||||||
|
%TO.N,Net-(D2-Pad2)*%
|
||||||
|
X8017500Y-37465000D03*
|
||||||
|
%TD*%
|
||||||
|
D13*
|
||||||
|
%TO.P,U3,6,VCC*%
|
||||||
|
%TO.N,Net-(C3-Pad1)*%
|
||||||
|
X10977500Y-30480000D03*
|
||||||
|
%TO.P,U3,5,VO*%
|
||||||
|
%TO.N,Net-(Q3-Pad1)*%
|
||||||
|
X10977500Y-29210000D03*
|
||||||
|
%TO.P,U3,4,VEE*%
|
||||||
|
%TO.N,Net-(C3-Pad2)*%
|
||||||
|
X10977500Y-27940000D03*
|
||||||
|
%TO.P,U3,3,C*%
|
||||||
|
%TO.N,GND*%
|
||||||
|
X19517500Y-27940000D03*
|
||||||
|
%TO.P,U3,2,NC*%
|
||||||
|
%TO.N,unconnected-(U3-Pad2)*%
|
||||||
|
X19517500Y-29210000D03*
|
||||||
|
%TO.P,U3,1,A*%
|
||||||
|
%TO.N,Net-(R3-Pad1)*%
|
||||||
|
X19517500Y-30480000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.P,Q3,3,S*%
|
||||||
|
%TO.N,Net-(C3-Pad2)*%
|
||||||
|
X3977500Y-24130000D03*
|
||||||
|
%TO.P,Q3,2,D*%
|
||||||
|
%TO.N,Net-(C2-Pad2)*%
|
||||||
|
X3977500Y-26670000D03*
|
||||||
|
D11*
|
||||||
|
%TO.P,Q3,1,G*%
|
||||||
|
%TO.N,Net-(Q3-Pad1)*%
|
||||||
|
X3977500Y-29210000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.P,D3,3,K*%
|
||||||
|
%TO.N,Net-(C3-Pad2)*%
|
||||||
|
X3977500Y-13335000D03*
|
||||||
|
%TO.P,D3,2,A*%
|
||||||
|
%TO.N,Net-(D3-Pad2)*%
|
||||||
|
X3977500Y-15875000D03*
|
||||||
|
D11*
|
||||||
|
%TO.P,D3,1,K*%
|
||||||
|
%TO.N,Net-(D2-Pad2)*%
|
||||||
|
X3977500Y-18415000D03*
|
||||||
|
%TD*%
|
||||||
|
D14*
|
||||||
|
%TO.P,R3,2*%
|
||||||
|
%TO.N,Net-(J6-Pad3)*%
|
||||||
|
X20607500Y-38735000D03*
|
||||||
|
%TO.P,R3,1*%
|
||||||
|
%TO.N,Net-(R3-Pad1)*%
|
||||||
|
X17507500Y-38735000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.P,D2,3,K*%
|
||||||
|
%TO.N,Net-(C2-Pad2)*%
|
||||||
|
X3977500Y-34925000D03*
|
||||||
|
%TO.P,D2,2,A*%
|
||||||
|
%TO.N,Net-(D2-Pad2)*%
|
||||||
|
X3977500Y-37465000D03*
|
||||||
|
D11*
|
||||||
|
%TO.P,D2,1,K*%
|
||||||
|
%TO.N,Net-(D1-Pad2)*%
|
||||||
|
X3977500Y-40005000D03*
|
||||||
|
%TD*%
|
||||||
|
D15*
|
||||||
|
%TO.P,C2,2*%
|
||||||
|
%TO.N,Net-(C2-Pad2)*%
|
||||||
|
X7627500Y-48662500D03*
|
||||||
|
%TO.P,C2,1*%
|
||||||
|
%TO.N,Net-(C2-Pad1)*%
|
||||||
|
X7627500Y-52937500D03*
|
||||||
|
%TD*%
|
||||||
|
%TO.P,C4,2*%
|
||||||
|
%TO.N,Net-(C4-Pad2)*%
|
||||||
|
X7627500Y-5482500D03*
|
||||||
|
%TO.P,C4,1*%
|
||||||
|
%TO.N,Net-(C4-Pad1)*%
|
||||||
|
X7627500Y-9757500D03*
|
||||||
|
%TD*%
|
||||||
|
D16*
|
||||||
|
%TO.P,J6,5,Pin_5*%
|
||||||
|
%TO.N,Net-(J6-Pad5)*%
|
||||||
|
X24137500Y-33655000D03*
|
||||||
|
%TO.P,J6,4,Pin_4*%
|
||||||
|
%TO.N,Net-(J6-Pad4)*%
|
||||||
|
X24137500Y-36195000D03*
|
||||||
|
%TO.P,J6,3,Pin_3*%
|
||||||
|
%TO.N,Net-(J6-Pad3)*%
|
||||||
|
X24137500Y-38735000D03*
|
||||||
|
%TO.P,J6,2,Pin_2*%
|
||||||
|
%TO.N,Net-(J6-Pad2)*%
|
||||||
|
X24137500Y-41275000D03*
|
||||||
|
D17*
|
||||||
|
%TO.P,J6,1,Pin_1*%
|
||||||
|
%TO.N,Net-(J6-Pad1)*%
|
||||||
|
X24137500Y-43815000D03*
|
||||||
|
%TD*%
|
||||||
|
D12*
|
||||||
|
%TO.P,J2,1,Pin_1*%
|
||||||
|
%TO.N,Net-(D1-Pad2)*%
|
||||||
|
X8017500Y-59055000D03*
|
||||||
|
%TD*%
|
||||||
|
%TO.P,J4,1,Pin_1*%
|
||||||
|
%TO.N,Net-(D3-Pad2)*%
|
||||||
|
X8017500Y-15875000D03*
|
||||||
|
%TD*%
|
||||||
|
D18*
|
||||||
|
%TO.P,D6,2,A*%
|
||||||
|
%TO.N,Net-(D2-Pad2)*%
|
||||||
|
X9947500Y-33655000D03*
|
||||||
|
%TO.P,D6,1,K*%
|
||||||
|
%TO.N,Net-(C3-Pad1)*%
|
||||||
|
X7847500Y-33655000D03*
|
||||||
|
%TD*%
|
||||||
|
D12*
|
||||||
|
%TO.P,J5,1,Pin_1*%
|
||||||
|
%TO.N,Net-(C4-Pad2)*%
|
||||||
|
X8017500Y-2540000D03*
|
||||||
|
%TD*%
|
||||||
|
D18*
|
||||||
|
%TO.P,D7,2,A*%
|
||||||
|
%TO.N,Net-(D3-Pad2)*%
|
||||||
|
X9947500Y-12065000D03*
|
||||||
|
%TO.P,D7,1,K*%
|
||||||
|
%TO.N,Net-(C4-Pad1)*%
|
||||||
|
X7847500Y-12065000D03*
|
||||||
|
%TD*%
|
||||||
|
D15*
|
||||||
|
%TO.P,C3,2*%
|
||||||
|
%TO.N,Net-(C3-Pad2)*%
|
||||||
|
X7627500Y-27072500D03*
|
||||||
|
%TO.P,C3,1*%
|
||||||
|
%TO.N,Net-(C3-Pad1)*%
|
||||||
|
X7627500Y-31347500D03*
|
||||||
|
%TD*%
|
||||||
|
%TO.P,C1,2*%
|
||||||
|
%TO.N,Net-(C1-Pad2)*%
|
||||||
|
X7627500Y-70252500D03*
|
||||||
|
%TO.P,C1,1*%
|
||||||
|
%TO.N,Net-(C1-Pad1)*%
|
||||||
|
X7627500Y-74527500D03*
|
||||||
|
%TD*%
|
||||||
|
D13*
|
||||||
|
%TO.P,U4,6,VCC*%
|
||||||
|
%TO.N,Net-(C4-Pad1)*%
|
||||||
|
X10977500Y-8890000D03*
|
||||||
|
%TO.P,U4,5,VO*%
|
||||||
|
%TO.N,Net-(Q4-Pad1)*%
|
||||||
|
X10977500Y-7620000D03*
|
||||||
|
%TO.P,U4,4,VEE*%
|
||||||
|
%TO.N,Net-(C4-Pad2)*%
|
||||||
|
X10977500Y-6350000D03*
|
||||||
|
%TO.P,U4,3,C*%
|
||||||
|
%TO.N,GND*%
|
||||||
|
X19517500Y-6350000D03*
|
||||||
|
%TO.P,U4,2,NC*%
|
||||||
|
%TO.N,unconnected-(U4-Pad2)*%
|
||||||
|
X19517500Y-7620000D03*
|
||||||
|
%TO.P,U4,1,A*%
|
||||||
|
%TO.N,Net-(R4-Pad1)*%
|
||||||
|
X19517500Y-8890000D03*
|
||||||
|
%TD*%
|
||||||
|
D14*
|
||||||
|
%TO.P,R4,2*%
|
||||||
|
%TO.N,Net-(J6-Pad4)*%
|
||||||
|
X20607500Y-36195000D03*
|
||||||
|
%TO.P,R4,1*%
|
||||||
|
%TO.N,Net-(R4-Pad1)*%
|
||||||
|
X17507500Y-36195000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.P,Q1,3,S*%
|
||||||
|
%TO.N,Net-(C1-Pad2)*%
|
||||||
|
X3977500Y-67310000D03*
|
||||||
|
%TO.P,Q1,2,D*%
|
||||||
|
%TO.N,Net-(D1-Pad1)*%
|
||||||
|
X3977500Y-69850000D03*
|
||||||
|
D11*
|
||||||
|
%TO.P,Q1,1,G*%
|
||||||
|
%TO.N,Net-(Q1-Pad1)*%
|
||||||
|
X3977500Y-72390000D03*
|
||||||
|
%TD*%
|
||||||
|
D13*
|
||||||
|
%TO.P,U1,6,VCC*%
|
||||||
|
%TO.N,Net-(C1-Pad1)*%
|
||||||
|
X10977500Y-73660000D03*
|
||||||
|
%TO.P,U1,5,VO*%
|
||||||
|
%TO.N,Net-(Q1-Pad1)*%
|
||||||
|
X10977500Y-72390000D03*
|
||||||
|
%TO.P,U1,4,VEE*%
|
||||||
|
%TO.N,Net-(C1-Pad2)*%
|
||||||
|
X10977500Y-71120000D03*
|
||||||
|
%TO.P,U1,3,C*%
|
||||||
|
%TO.N,GND*%
|
||||||
|
X19517500Y-71120000D03*
|
||||||
|
%TO.P,U1,2,NC*%
|
||||||
|
%TO.N,unconnected-(U1-Pad2)*%
|
||||||
|
X19517500Y-72390000D03*
|
||||||
|
%TO.P,U1,1,A*%
|
||||||
|
%TO.N,Net-(R1-Pad1)*%
|
||||||
|
X19517500Y-73660000D03*
|
||||||
|
%TD*%
|
||||||
|
D18*
|
||||||
|
%TO.P,D4,2,A*%
|
||||||
|
%TO.N,Net-(D1-Pad1)*%
|
||||||
|
X12487500Y-76200000D03*
|
||||||
|
%TO.P,D4,1,K*%
|
||||||
|
%TO.N,Net-(C1-Pad1)*%
|
||||||
|
X10387500Y-76200000D03*
|
||||||
|
%TD*%
|
||||||
|
D14*
|
||||||
|
%TO.P,R1,2*%
|
||||||
|
%TO.N,Net-(J6-Pad1)*%
|
||||||
|
X20607500Y-43815000D03*
|
||||||
|
%TO.P,R1,1*%
|
||||||
|
%TO.N,Net-(R1-Pad1)*%
|
||||||
|
X17507500Y-43815000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.P,Q2,3,S*%
|
||||||
|
%TO.N,Net-(C2-Pad2)*%
|
||||||
|
X3977500Y-45720000D03*
|
||||||
|
%TO.P,Q2,2,D*%
|
||||||
|
%TO.N,Net-(C1-Pad2)*%
|
||||||
|
X3977500Y-48260000D03*
|
||||||
|
D11*
|
||||||
|
%TO.P,Q2,1,G*%
|
||||||
|
%TO.N,Net-(Q2-Pad1)*%
|
||||||
|
X3977500Y-50800000D03*
|
||||||
|
%TD*%
|
||||||
|
D18*
|
||||||
|
%TO.P,D5,2,A*%
|
||||||
|
%TO.N,Net-(D1-Pad2)*%
|
||||||
|
X9947500Y-55245000D03*
|
||||||
|
%TO.P,D5,1,K*%
|
||||||
|
%TO.N,Net-(C2-Pad1)*%
|
||||||
|
X7847500Y-55245000D03*
|
||||||
|
%TD*%
|
||||||
|
D12*
|
||||||
|
%TO.P,J1,1,Pin_1*%
|
||||||
|
%TO.N,Net-(D1-Pad1)*%
|
||||||
|
X4017500Y-76835000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.P,Q4,3,S*%
|
||||||
|
%TO.N,Net-(C4-Pad2)*%
|
||||||
|
X3977500Y-2540000D03*
|
||||||
|
%TO.P,Q4,2,D*%
|
||||||
|
%TO.N,Net-(C3-Pad2)*%
|
||||||
|
X3977500Y-5080000D03*
|
||||||
|
D11*
|
||||||
|
%TO.P,Q4,1,G*%
|
||||||
|
%TO.N,Net-(Q4-Pad1)*%
|
||||||
|
X3977500Y-7620000D03*
|
||||||
|
%TD*%
|
||||||
|
D14*
|
||||||
|
%TO.P,R2,2*%
|
||||||
|
%TO.N,Net-(J6-Pad2)*%
|
||||||
|
X20607500Y-41275000D03*
|
||||||
|
%TO.P,R2,1*%
|
||||||
|
%TO.N,Net-(R2-Pad1)*%
|
||||||
|
X17507500Y-41275000D03*
|
||||||
|
%TD*%
|
||||||
|
D19*
|
||||||
|
%TO.P,R5,2*%
|
||||||
|
%TO.N,Net-(J6-Pad5)*%
|
||||||
|
X23542500Y-25400000D03*
|
||||||
|
%TO.P,R5,1*%
|
||||||
|
%TO.N,GND*%
|
||||||
|
X19092500Y-25400000D03*
|
||||||
|
%TD*%
|
||||||
|
D13*
|
||||||
|
%TO.P,U2,6,VCC*%
|
||||||
|
%TO.N,Net-(C2-Pad1)*%
|
||||||
|
X10977500Y-52070000D03*
|
||||||
|
%TO.P,U2,5,VO*%
|
||||||
|
%TO.N,Net-(Q2-Pad1)*%
|
||||||
|
X10977500Y-50800000D03*
|
||||||
|
%TO.P,U2,4,VEE*%
|
||||||
|
%TO.N,Net-(C2-Pad2)*%
|
||||||
|
X10977500Y-49530000D03*
|
||||||
|
%TO.P,U2,3,C*%
|
||||||
|
%TO.N,GND*%
|
||||||
|
X19517500Y-49530000D03*
|
||||||
|
%TO.P,U2,2,NC*%
|
||||||
|
%TO.N,unconnected-(U2-Pad2)*%
|
||||||
|
X19517500Y-50800000D03*
|
||||||
|
%TO.P,U2,1,A*%
|
||||||
|
%TO.N,Net-(R2-Pad1)*%
|
||||||
|
X19517500Y-52070000D03*
|
||||||
|
%TD*%
|
||||||
|
D20*
|
||||||
|
%TO.N,Net-(C1-Pad1)*%
|
||||||
|
X10375000Y-76212500D02*
|
||||||
|
X10387500Y-76200000D01*
|
||||||
|
X8445000Y-73710000D02*
|
||||||
|
X10977500Y-73710000D01*
|
||||||
|
X7627500Y-74527500D02*
|
||||||
|
X8445000Y-73710000D01*
|
||||||
|
X9312500Y-76212500D02*
|
||||||
|
X10375000Y-76212500D01*
|
||||||
|
X9312500Y-76212500D02*
|
||||||
|
X7627500Y-74527500D01*
|
||||||
|
D21*
|
||||||
|
%TO.N,Net-(C1-Pad2)*%
|
||||||
|
X1912500Y-56515000D02*
|
||||||
|
X1477500Y-56080000D01*
|
||||||
|
X2826641Y-67310000D02*
|
||||||
|
X3977500Y-67310000D01*
|
||||||
|
D20*
|
||||||
|
X7627500Y-70252500D02*
|
||||||
|
X8445000Y-71070000D01*
|
||||||
|
D21*
|
||||||
|
X5087500Y-67310000D02*
|
||||||
|
X7627500Y-69850000D01*
|
||||||
|
X1477500Y-56080000D02*
|
||||||
|
X1477500Y-65960859D01*
|
||||||
|
X3977500Y-67310000D02*
|
||||||
|
X5087500Y-67310000D01*
|
||||||
|
X1477500Y-48347500D02*
|
||||||
|
X1477500Y-56080000D01*
|
||||||
|
D20*
|
||||||
|
X8445000Y-71070000D02*
|
||||||
|
X10977500Y-71070000D01*
|
||||||
|
D21*
|
||||||
|
X7627500Y-69850000D02*
|
||||||
|
X7627500Y-70252500D01*
|
||||||
|
X1477500Y-65960859D02*
|
||||||
|
X2826641Y-67310000D01*
|
||||||
|
X1565000Y-48260000D02*
|
||||||
|
X1477500Y-48347500D01*
|
||||||
|
X3977500Y-48260000D02*
|
||||||
|
X1565000Y-48260000D01*
|
||||||
|
X3977500Y-56515000D02*
|
||||||
|
X1912500Y-56515000D01*
|
||||||
|
D20*
|
||||||
|
%TO.N,Net-(C2-Pad1)*%
|
||||||
|
X8445000Y-52120000D02*
|
||||||
|
X10977500Y-52120000D01*
|
||||||
|
X7847500Y-55245000D02*
|
||||||
|
X7847500Y-53157500D01*
|
||||||
|
X7627500Y-52937500D02*
|
||||||
|
X8445000Y-52120000D01*
|
||||||
|
D21*
|
||||||
|
%TO.N,Net-(C2-Pad2)*%
|
||||||
|
X1565000Y-26670000D02*
|
||||||
|
X1477500Y-26757500D01*
|
||||||
|
X3977500Y-45720000D02*
|
||||||
|
X5087500Y-45720000D01*
|
||||||
|
X3977500Y-26670000D02*
|
||||||
|
X1565000Y-26670000D01*
|
||||||
|
X1477500Y-35125000D02*
|
||||||
|
X1477500Y-43220000D01*
|
||||||
|
D20*
|
||||||
|
X7627500Y-48662500D02*
|
||||||
|
X8445000Y-49480000D01*
|
||||||
|
D21*
|
||||||
|
X1677500Y-34925000D02*
|
||||||
|
X1477500Y-35125000D01*
|
||||||
|
X7627500Y-48260000D02*
|
||||||
|
X7627500Y-48662500D01*
|
||||||
|
D20*
|
||||||
|
X8445000Y-49480000D02*
|
||||||
|
X10977500Y-49480000D01*
|
||||||
|
D21*
|
||||||
|
X3977500Y-34925000D02*
|
||||||
|
X1677500Y-34925000D01*
|
||||||
|
X1477500Y-26757500D02*
|
||||||
|
X1477500Y-35125000D01*
|
||||||
|
X1477500Y-43220000D02*
|
||||||
|
X3977500Y-45720000D01*
|
||||||
|
X5087500Y-45720000D02*
|
||||||
|
X7627500Y-48260000D01*
|
||||||
|
D20*
|
||||||
|
%TO.N,Net-(C3-Pad1)*%
|
||||||
|
X7627500Y-31347500D02*
|
||||||
|
X8445000Y-30530000D01*
|
||||||
|
X8445000Y-30530000D02*
|
||||||
|
X10977500Y-30530000D01*
|
||||||
|
X7847500Y-33655000D02*
|
||||||
|
X7847500Y-31567500D01*
|
||||||
|
D21*
|
||||||
|
%TO.N,Net-(C3-Pad2)*%
|
||||||
|
X1912500Y-5080000D02*
|
||||||
|
X1477500Y-5515000D01*
|
||||||
|
X5722500Y-24130000D02*
|
||||||
|
X7627500Y-26035000D01*
|
||||||
|
X1477500Y-21630000D02*
|
||||||
|
X3977500Y-24130000D01*
|
||||||
|
X1477500Y-5515000D02*
|
||||||
|
X1477500Y-13770000D01*
|
||||||
|
X7627500Y-26035000D02*
|
||||||
|
X7627500Y-27072500D01*
|
||||||
|
D20*
|
||||||
|
X7627500Y-27072500D02*
|
||||||
|
X8445000Y-27890000D01*
|
||||||
|
D21*
|
||||||
|
X3977500Y-5080000D02*
|
||||||
|
X1912500Y-5080000D01*
|
||||||
|
D20*
|
||||||
|
X8445000Y-27890000D02*
|
||||||
|
X10977500Y-27890000D01*
|
||||||
|
D21*
|
||||||
|
X1477500Y-13770000D02*
|
||||||
|
X1477500Y-21630000D01*
|
||||||
|
X1912500Y-13335000D02*
|
||||||
|
X1477500Y-13770000D01*
|
||||||
|
X3977500Y-13335000D02*
|
||||||
|
X1912500Y-13335000D01*
|
||||||
|
X3977500Y-24130000D02*
|
||||||
|
X5722500Y-24130000D01*
|
||||||
|
D20*
|
||||||
|
%TO.N,Net-(C4-Pad1)*%
|
||||||
|
X7847500Y-12065000D02*
|
||||||
|
X7847500Y-9977500D01*
|
||||||
|
X7627500Y-9757500D02*
|
||||||
|
X8445000Y-8940000D01*
|
||||||
|
X8445000Y-8940000D02*
|
||||||
|
X10977500Y-8940000D01*
|
||||||
|
D21*
|
||||||
|
%TO.N,Net-(C4-Pad2)*%
|
||||||
|
X7627500Y-5482500D02*
|
||||||
|
X7627500Y-2930000D01*
|
||||||
|
D20*
|
||||||
|
X7627500Y-5482500D02*
|
||||||
|
X8445000Y-6300000D01*
|
||||||
|
X8445000Y-6300000D02*
|
||||||
|
X10977500Y-6300000D01*
|
||||||
|
D21*
|
||||||
|
X3977500Y-2540000D02*
|
||||||
|
X8017500Y-2540000D01*
|
||||||
|
%TO.N,Net-(D1-Pad2)*%
|
||||||
|
X13557500Y-54395000D02*
|
||||||
|
X12390000Y-55562500D01*
|
||||||
|
X8897500Y-59055000D02*
|
||||||
|
X6992500Y-59055000D01*
|
||||||
|
X6992500Y-59055000D02*
|
||||||
|
X3977500Y-59055000D01*
|
||||||
|
X12390000Y-55562500D02*
|
||||||
|
X8897500Y-59055000D01*
|
||||||
|
X5087500Y-40005000D02*
|
||||||
|
X13557500Y-48475000D01*
|
||||||
|
D20*
|
||||||
|
X9947500Y-55245000D02*
|
||||||
|
X12072500Y-55245000D01*
|
||||||
|
X12072500Y-55245000D02*
|
||||||
|
X12390000Y-55562500D01*
|
||||||
|
D21*
|
||||||
|
X13557500Y-48475000D02*
|
||||||
|
X13557500Y-54395000D01*
|
||||||
|
X3977500Y-40005000D02*
|
||||||
|
X5087500Y-40005000D01*
|
||||||
|
%TO.N,Net-(D2-Pad2)*%
|
||||||
|
X13977500Y-31750000D02*
|
||||||
|
X11120000Y-34607500D01*
|
||||||
|
X5087500Y-18415000D02*
|
||||||
|
X13977500Y-27305000D01*
|
||||||
|
D20*
|
||||||
|
X10167500Y-33655000D02*
|
||||||
|
X11120000Y-34607500D01*
|
||||||
|
D21*
|
||||||
|
X13977500Y-27305000D02*
|
||||||
|
X13977500Y-31750000D01*
|
||||||
|
X3977500Y-37465000D02*
|
||||||
|
X8017500Y-37465000D01*
|
||||||
|
X3977500Y-18415000D02*
|
||||||
|
X5087500Y-18415000D01*
|
||||||
|
D20*
|
||||||
|
X9947500Y-33655000D02*
|
||||||
|
X10167500Y-33655000D01*
|
||||||
|
D21*
|
||||||
|
X11120000Y-34607500D02*
|
||||||
|
X8262500Y-37465000D01*
|
||||||
|
D20*
|
||||||
|
%TO.N,Net-(D3-Pad2)*%
|
||||||
|
X6992500Y-15875000D02*
|
||||||
|
X9947500Y-12920000D01*
|
||||||
|
X9947500Y-12920000D02*
|
||||||
|
X9947500Y-12065000D01*
|
||||||
|
D21*
|
||||||
|
X6992500Y-15875000D02*
|
||||||
|
X3977500Y-15875000D01*
|
||||||
|
D20*
|
||||||
|
%TO.N,Net-(Q1-Pad1)*%
|
||||||
|
X10977500Y-72390000D02*
|
||||||
|
X3977500Y-72390000D01*
|
||||||
|
%TO.N,Net-(Q3-Pad1)*%
|
||||||
|
X10977500Y-29210000D02*
|
||||||
|
X3977500Y-29210000D01*
|
||||||
|
%TO.N,Net-(Q4-Pad1)*%
|
||||||
|
X3977500Y-7620000D02*
|
||||||
|
X10977500Y-7620000D01*
|
||||||
|
%TO.N,GND*%
|
||||||
|
X17152500Y-25400000D02*
|
||||||
|
X16517500Y-26035000D01*
|
||||||
|
X12072500Y-44450000D02*
|
||||||
|
X16517500Y-48895000D01*
|
||||||
|
X18422500Y-71120000D02*
|
||||||
|
X19517500Y-71120000D01*
|
||||||
|
X16517500Y-48895000D02*
|
||||||
|
X16517500Y-50165000D01*
|
||||||
|
X19517500Y-6350000D02*
|
||||||
|
X17887500Y-6350000D01*
|
||||||
|
X16517500Y-7720000D02*
|
||||||
|
X16517500Y-26035000D01*
|
||||||
|
X16517500Y-69215000D02*
|
||||||
|
X18422500Y-71120000D01*
|
||||||
|
X12072500Y-36830000D02*
|
||||||
|
X12072500Y-44450000D01*
|
||||||
|
X16517500Y-27940000D02*
|
||||||
|
X16517500Y-32385000D01*
|
||||||
|
X16517500Y-32385000D02*
|
||||||
|
X12072500Y-36830000D01*
|
||||||
|
X16517500Y-49530000D02*
|
||||||
|
X16517500Y-50165000D01*
|
||||||
|
X19517500Y-27940000D02*
|
||||||
|
X16517500Y-27940000D01*
|
||||||
|
X19517500Y-49530000D02*
|
||||||
|
X16517500Y-49530000D01*
|
||||||
|
X17887500Y-6350000D02*
|
||||||
|
X16517500Y-7720000D01*
|
||||||
|
X16517500Y-50165000D02*
|
||||||
|
X16517500Y-69215000D01*
|
||||||
|
X19092500Y-25400000D02*
|
||||||
|
X17152500Y-25400000D01*
|
||||||
|
X16517500Y-26035000D02*
|
||||||
|
X16517500Y-27940000D01*
|
||||||
|
%TO.N,Net-(Q2-Pad1)*%
|
||||||
|
X10977500Y-50800000D02*
|
||||||
|
X3977500Y-50800000D01*
|
||||||
|
%TO.N,Net-(J6-Pad2)*%
|
||||||
|
X24137500Y-41275000D02*
|
||||||
|
X20057500Y-41275000D01*
|
||||||
|
%TO.N,Net-(J6-Pad3)*%
|
||||||
|
X24137500Y-38735000D02*
|
||||||
|
X20057500Y-38735000D01*
|
||||||
|
%TO.N,Net-(J6-Pad4)*%
|
||||||
|
X20057500Y-36195000D02*
|
||||||
|
X24137500Y-36195000D01*
|
||||||
|
%TO.N,Net-(R1-Pad1)*%
|
||||||
|
X23502500Y-48260000D02*
|
||||||
|
X21597500Y-46355000D01*
|
||||||
|
X20047500Y-46355000D02*
|
||||||
|
X17507500Y-43815000D01*
|
||||||
|
X21597500Y-46355000D02*
|
||||||
|
X20047500Y-46355000D01*
|
||||||
|
X21147500Y-73660000D02*
|
||||||
|
X23502500Y-71305000D01*
|
||||||
|
X19517500Y-73660000D02*
|
||||||
|
X21147500Y-73660000D01*
|
||||||
|
X23502500Y-71305000D02*
|
||||||
|
X23502500Y-48260000D01*
|
||||||
|
D21*
|
||||||
|
%TO.N,Net-(D1-Pad1)*%
|
||||||
|
X3977500Y-61595000D02*
|
||||||
|
X5087500Y-61595000D01*
|
||||||
|
X1477500Y-69937500D02*
|
||||||
|
X3977500Y-69937500D01*
|
||||||
|
D20*
|
||||||
|
X12707500Y-76835000D02*
|
||||||
|
X12707500Y-76420000D01*
|
||||||
|
D21*
|
||||||
|
X5087500Y-61595000D02*
|
||||||
|
X13557500Y-70065000D01*
|
||||||
|
X1477500Y-74495000D02*
|
||||||
|
X1477500Y-69937500D01*
|
||||||
|
X13557500Y-75985000D02*
|
||||||
|
X12707500Y-76835000D01*
|
||||||
|
X11580000Y-77962500D02*
|
||||||
|
X12707500Y-76835000D01*
|
||||||
|
X4945000Y-77962500D02*
|
||||||
|
X11580000Y-77962500D01*
|
||||||
|
D20*
|
||||||
|
X12707500Y-76420000D02*
|
||||||
|
X12487500Y-76200000D01*
|
||||||
|
D21*
|
||||||
|
X3817500Y-76835000D02*
|
||||||
|
X4945000Y-77962500D01*
|
||||||
|
X13557500Y-70065000D02*
|
||||||
|
X13557500Y-75985000D01*
|
||||||
|
X3817500Y-76835000D02*
|
||||||
|
X1477500Y-74495000D01*
|
||||||
|
D20*
|
||||||
|
%TO.N,Net-(J6-Pad1)*%
|
||||||
|
X24137500Y-43815000D02*
|
||||||
|
X20057500Y-43815000D01*
|
||||||
|
%TO.N,Net-(R2-Pad1)*%
|
||||||
|
X21147500Y-52070000D02*
|
||||||
|
X21347500Y-51870000D01*
|
||||||
|
X19518286Y-47490000D02*
|
||||||
|
X18017500Y-47490000D01*
|
||||||
|
X16232500Y-41275000D02*
|
||||||
|
X17507500Y-41275000D01*
|
||||||
|
X19633286Y-47605000D02*
|
||||||
|
X19518286Y-47490000D01*
|
||||||
|
X15017500Y-44490000D02*
|
||||||
|
X15017500Y-42490000D01*
|
||||||
|
X15017500Y-42490000D02*
|
||||||
|
X16232500Y-41275000D01*
|
||||||
|
X18017500Y-47490000D02*
|
||||||
|
X15017500Y-44490000D01*
|
||||||
|
X21347500Y-51870000D02*
|
||||||
|
X21347500Y-48645000D01*
|
||||||
|
X21347500Y-48645000D02*
|
||||||
|
X20307500Y-47605000D01*
|
||||||
|
X20307500Y-47605000D02*
|
||||||
|
X19633286Y-47605000D01*
|
||||||
|
X19517500Y-52070000D02*
|
||||||
|
X21147500Y-52070000D01*
|
||||||
|
%TO.N,Net-(R3-Pad1)*%
|
||||||
|
X16017500Y-37245000D02*
|
||||||
|
X17507500Y-38735000D01*
|
||||||
|
X19517500Y-31152766D02*
|
||||||
|
X16017500Y-34652766D01*
|
||||||
|
X19517500Y-30480000D02*
|
||||||
|
X19517500Y-31152766D01*
|
||||||
|
X16017500Y-34652766D02*
|
||||||
|
X16017500Y-37245000D01*
|
||||||
|
%TO.N,Net-(R4-Pad1)*%
|
||||||
|
X21347500Y-10720000D02*
|
||||||
|
X19517500Y-8890000D01*
|
||||||
|
X17507500Y-35390000D02*
|
||||||
|
X21347500Y-31550000D01*
|
||||||
|
X17507500Y-36195000D02*
|
||||||
|
X17507500Y-35390000D01*
|
||||||
|
X21347500Y-31550000D02*
|
||||||
|
X21347500Y-10720000D01*
|
||||||
|
%TO.N,Net-(J6-Pad5)*%
|
||||||
|
X24137500Y-25995000D02*
|
||||||
|
X23542500Y-25400000D01*
|
||||||
|
X24137500Y-33655000D02*
|
||||||
|
X24137500Y-25995000D01*
|
||||||
|
%TD*%
|
||||||
|
M02*
|
||||||
234
squeow_mod/squeow_mod-F_Mask.gbr
Normal file
234
squeow_mod/squeow_mod-F_Mask.gbr
Normal file
@@ -0,0 +1,234 @@
|
|||||||
|
%TF.GenerationSoftware,KiCad,Pcbnew,7.0.5+dfsg-2*%
|
||||||
|
%TF.CreationDate,2023-06-30T15:01:53+02:00*%
|
||||||
|
%TF.ProjectId,squeow_mod,73717565-6f77-45f6-9d6f-642e6b696361,rev?*%
|
||||||
|
%TF.SameCoordinates,PX2cce564PYfbec30*%
|
||||||
|
%TF.FileFunction,Soldermask,Top*%
|
||||||
|
%TF.FilePolarity,Negative*%
|
||||||
|
%FSLAX46Y46*%
|
||||||
|
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
|
||||||
|
G04 Created by KiCad (PCBNEW 7.0.5+dfsg-2) date 2023-06-30 15:01:53*
|
||||||
|
%MOMM*%
|
||||||
|
%LPD*%
|
||||||
|
G01*
|
||||||
|
G04 APERTURE LIST*
|
||||||
|
G04 Aperture macros list*
|
||||||
|
%AMRoundRect*
|
||||||
|
0 Rectangle with rounded corners*
|
||||||
|
0 $1 Rounding radius*
|
||||||
|
0 $2 $3 $4 $5 $6 $7 $8 $9 X,Y pos of 4 corners*
|
||||||
|
0 Add a 4 corners polygon primitive as box body*
|
||||||
|
4,1,4,$2,$3,$4,$5,$6,$7,$8,$9,$2,$3,0*
|
||||||
|
0 Add four circle primitives for the rounded corners*
|
||||||
|
1,1,$1+$1,$2,$3*
|
||||||
|
1,1,$1+$1,$4,$5*
|
||||||
|
1,1,$1+$1,$6,$7*
|
||||||
|
1,1,$1+$1,$8,$9*
|
||||||
|
0 Add four rect primitives between the rounded corners*
|
||||||
|
20,1,$1+$1,$2,$3,$4,$5,0*
|
||||||
|
20,1,$1+$1,$4,$5,$6,$7,0*
|
||||||
|
20,1,$1+$1,$6,$7,$8,$9,0*
|
||||||
|
20,1,$1+$1,$8,$9,$2,$3,0*%
|
||||||
|
G04 Aperture macros list end*
|
||||||
|
%ADD10O,2.000000X1.905000*%
|
||||||
|
%ADD11R,2.000000X1.905000*%
|
||||||
|
%ADD12O,3.500000X3.500000*%
|
||||||
|
%ADD13C,4.000000*%
|
||||||
|
%ADD14R,2.160000X0.640000*%
|
||||||
|
%ADD15RoundRect,0.250000X-0.400000X-0.625000X0.400000X-0.625000X0.400000X0.625000X-0.400000X0.625000X0*%
|
||||||
|
%ADD16RoundRect,0.250000X1.450000X-0.537500X1.450000X0.537500X-1.450000X0.537500X-1.450000X-0.537500X0*%
|
||||||
|
%ADD17O,1.700000X1.700000*%
|
||||||
|
%ADD18R,1.700000X1.700000*%
|
||||||
|
%ADD19R,0.600000X0.450000*%
|
||||||
|
%ADD20RoundRect,0.250000X-0.400000X-1.450000X0.400000X-1.450000X0.400000X1.450000X-0.400000X1.450000X0*%
|
||||||
|
G04 APERTURE END LIST*
|
||||||
|
D10*
|
||||||
|
%TO.C,D1*%
|
||||||
|
X3977500Y-56515000D03*
|
||||||
|
X3977500Y-59055000D03*
|
||||||
|
D11*
|
||||||
|
X3977500Y-61595000D03*
|
||||||
|
D12*
|
||||||
|
X-11822500Y-59055000D03*
|
||||||
|
%TD*%
|
||||||
|
D13*
|
||||||
|
%TO.C,J3*%
|
||||||
|
X8017500Y-37465000D03*
|
||||||
|
%TD*%
|
||||||
|
D14*
|
||||||
|
%TO.C,U3*%
|
||||||
|
X10977500Y-30480000D03*
|
||||||
|
X10977500Y-29210000D03*
|
||||||
|
X10977500Y-27940000D03*
|
||||||
|
X19517500Y-27940000D03*
|
||||||
|
X19517500Y-29210000D03*
|
||||||
|
X19517500Y-30480000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.C,Q3*%
|
||||||
|
X3977500Y-24130000D03*
|
||||||
|
X3977500Y-26670000D03*
|
||||||
|
D11*
|
||||||
|
X3977500Y-29210000D03*
|
||||||
|
D12*
|
||||||
|
X-11822500Y-26670000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.C,D3*%
|
||||||
|
X3977500Y-13335000D03*
|
||||||
|
X3977500Y-15875000D03*
|
||||||
|
D11*
|
||||||
|
X3977500Y-18415000D03*
|
||||||
|
D12*
|
||||||
|
X-11822500Y-15875000D03*
|
||||||
|
%TD*%
|
||||||
|
D15*
|
||||||
|
%TO.C,R3*%
|
||||||
|
X20607500Y-38735000D03*
|
||||||
|
X17507500Y-38735000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.C,D2*%
|
||||||
|
X3977500Y-34925000D03*
|
||||||
|
X3977500Y-37465000D03*
|
||||||
|
D11*
|
||||||
|
X3977500Y-40005000D03*
|
||||||
|
D12*
|
||||||
|
X-11822500Y-37465000D03*
|
||||||
|
%TD*%
|
||||||
|
D16*
|
||||||
|
%TO.C,C2*%
|
||||||
|
X7627500Y-48662500D03*
|
||||||
|
X7627500Y-52937500D03*
|
||||||
|
%TD*%
|
||||||
|
%TO.C,C4*%
|
||||||
|
X7627500Y-5482500D03*
|
||||||
|
X7627500Y-9757500D03*
|
||||||
|
%TD*%
|
||||||
|
D17*
|
||||||
|
%TO.C,J6*%
|
||||||
|
X24137500Y-33655000D03*
|
||||||
|
X24137500Y-36195000D03*
|
||||||
|
X24137500Y-38735000D03*
|
||||||
|
X24137500Y-41275000D03*
|
||||||
|
D18*
|
||||||
|
X24137500Y-43815000D03*
|
||||||
|
%TD*%
|
||||||
|
D13*
|
||||||
|
%TO.C,J2*%
|
||||||
|
X8017500Y-59055000D03*
|
||||||
|
%TD*%
|
||||||
|
%TO.C,J4*%
|
||||||
|
X8017500Y-15875000D03*
|
||||||
|
%TD*%
|
||||||
|
D19*
|
||||||
|
%TO.C,D6*%
|
||||||
|
X9947500Y-33655000D03*
|
||||||
|
X7847500Y-33655000D03*
|
||||||
|
%TD*%
|
||||||
|
D13*
|
||||||
|
%TO.C,J5*%
|
||||||
|
X8017500Y-2540000D03*
|
||||||
|
%TD*%
|
||||||
|
D19*
|
||||||
|
%TO.C,D7*%
|
||||||
|
X9947500Y-12065000D03*
|
||||||
|
X7847500Y-12065000D03*
|
||||||
|
%TD*%
|
||||||
|
D16*
|
||||||
|
%TO.C,C3*%
|
||||||
|
X7627500Y-27072500D03*
|
||||||
|
X7627500Y-31347500D03*
|
||||||
|
%TD*%
|
||||||
|
%TO.C,C1*%
|
||||||
|
X7627500Y-70252500D03*
|
||||||
|
X7627500Y-74527500D03*
|
||||||
|
%TD*%
|
||||||
|
D14*
|
||||||
|
%TO.C,U4*%
|
||||||
|
X10977500Y-8890000D03*
|
||||||
|
X10977500Y-7620000D03*
|
||||||
|
X10977500Y-6350000D03*
|
||||||
|
X19517500Y-6350000D03*
|
||||||
|
X19517500Y-7620000D03*
|
||||||
|
X19517500Y-8890000D03*
|
||||||
|
%TD*%
|
||||||
|
D15*
|
||||||
|
%TO.C,R4*%
|
||||||
|
X20607500Y-36195000D03*
|
||||||
|
X17507500Y-36195000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.C,Q1*%
|
||||||
|
X3977500Y-67310000D03*
|
||||||
|
X3977500Y-69850000D03*
|
||||||
|
D11*
|
||||||
|
X3977500Y-72390000D03*
|
||||||
|
D12*
|
||||||
|
X-11822500Y-69850000D03*
|
||||||
|
%TD*%
|
||||||
|
D14*
|
||||||
|
%TO.C,U1*%
|
||||||
|
X10977500Y-73660000D03*
|
||||||
|
X10977500Y-72390000D03*
|
||||||
|
X10977500Y-71120000D03*
|
||||||
|
X19517500Y-71120000D03*
|
||||||
|
X19517500Y-72390000D03*
|
||||||
|
X19517500Y-73660000D03*
|
||||||
|
%TD*%
|
||||||
|
D19*
|
||||||
|
%TO.C,D4*%
|
||||||
|
X12487500Y-76200000D03*
|
||||||
|
X10387500Y-76200000D03*
|
||||||
|
%TD*%
|
||||||
|
D15*
|
||||||
|
%TO.C,R1*%
|
||||||
|
X20607500Y-43815000D03*
|
||||||
|
X17507500Y-43815000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.C,Q2*%
|
||||||
|
X3977500Y-45720000D03*
|
||||||
|
X3977500Y-48260000D03*
|
||||||
|
D11*
|
||||||
|
X3977500Y-50800000D03*
|
||||||
|
D12*
|
||||||
|
X-11822500Y-48260000D03*
|
||||||
|
%TD*%
|
||||||
|
D19*
|
||||||
|
%TO.C,D5*%
|
||||||
|
X9947500Y-55245000D03*
|
||||||
|
X7847500Y-55245000D03*
|
||||||
|
%TD*%
|
||||||
|
D13*
|
||||||
|
%TO.C,J1*%
|
||||||
|
X4017500Y-76835000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.C,Q4*%
|
||||||
|
X3977500Y-2540000D03*
|
||||||
|
X3977500Y-5080000D03*
|
||||||
|
D11*
|
||||||
|
X3977500Y-7620000D03*
|
||||||
|
D12*
|
||||||
|
X-11822500Y-5080000D03*
|
||||||
|
%TD*%
|
||||||
|
D15*
|
||||||
|
%TO.C,R2*%
|
||||||
|
X20607500Y-41275000D03*
|
||||||
|
X17507500Y-41275000D03*
|
||||||
|
%TD*%
|
||||||
|
D20*
|
||||||
|
%TO.C,R5*%
|
||||||
|
X23542500Y-25400000D03*
|
||||||
|
X19092500Y-25400000D03*
|
||||||
|
%TD*%
|
||||||
|
D14*
|
||||||
|
%TO.C,U2*%
|
||||||
|
X10977500Y-52070000D03*
|
||||||
|
X10977500Y-50800000D03*
|
||||||
|
X10977500Y-49530000D03*
|
||||||
|
X19517500Y-49530000D03*
|
||||||
|
X19517500Y-50800000D03*
|
||||||
|
X19517500Y-52070000D03*
|
||||||
|
%TD*%
|
||||||
|
M02*
|
||||||
136
squeow_mod/squeow_mod-F_Paste.gbr
Normal file
136
squeow_mod/squeow_mod-F_Paste.gbr
Normal file
@@ -0,0 +1,136 @@
|
|||||||
|
%TF.GenerationSoftware,KiCad,Pcbnew,7.0.5+dfsg-2*%
|
||||||
|
%TF.CreationDate,2023-06-30T15:01:52+02:00*%
|
||||||
|
%TF.ProjectId,squeow_mod,73717565-6f77-45f6-9d6f-642e6b696361,rev?*%
|
||||||
|
%TF.SameCoordinates,PX2cce564PYfbec30*%
|
||||||
|
%TF.FileFunction,Paste,Top*%
|
||||||
|
%TF.FilePolarity,Positive*%
|
||||||
|
%FSLAX46Y46*%
|
||||||
|
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
|
||||||
|
G04 Created by KiCad (PCBNEW 7.0.5+dfsg-2) date 2023-06-30 15:01:52*
|
||||||
|
%MOMM*%
|
||||||
|
%LPD*%
|
||||||
|
G01*
|
||||||
|
G04 APERTURE LIST*
|
||||||
|
G04 Aperture macros list*
|
||||||
|
%AMRoundRect*
|
||||||
|
0 Rectangle with rounded corners*
|
||||||
|
0 $1 Rounding radius*
|
||||||
|
0 $2 $3 $4 $5 $6 $7 $8 $9 X,Y pos of 4 corners*
|
||||||
|
0 Add a 4 corners polygon primitive as box body*
|
||||||
|
4,1,4,$2,$3,$4,$5,$6,$7,$8,$9,$2,$3,0*
|
||||||
|
0 Add four circle primitives for the rounded corners*
|
||||||
|
1,1,$1+$1,$2,$3*
|
||||||
|
1,1,$1+$1,$4,$5*
|
||||||
|
1,1,$1+$1,$6,$7*
|
||||||
|
1,1,$1+$1,$8,$9*
|
||||||
|
0 Add four rect primitives between the rounded corners*
|
||||||
|
20,1,$1+$1,$2,$3,$4,$5,0*
|
||||||
|
20,1,$1+$1,$4,$5,$6,$7,0*
|
||||||
|
20,1,$1+$1,$6,$7,$8,$9,0*
|
||||||
|
20,1,$1+$1,$8,$9,$2,$3,0*%
|
||||||
|
G04 Aperture macros list end*
|
||||||
|
%ADD10R,2.160000X0.640000*%
|
||||||
|
%ADD11RoundRect,0.250000X-0.400000X-0.625000X0.400000X-0.625000X0.400000X0.625000X-0.400000X0.625000X0*%
|
||||||
|
%ADD12RoundRect,0.250000X1.450000X-0.537500X1.450000X0.537500X-1.450000X0.537500X-1.450000X-0.537500X0*%
|
||||||
|
%ADD13R,0.600000X0.450000*%
|
||||||
|
%ADD14RoundRect,0.250000X-0.400000X-1.450000X0.400000X-1.450000X0.400000X1.450000X-0.400000X1.450000X0*%
|
||||||
|
G04 APERTURE END LIST*
|
||||||
|
D10*
|
||||||
|
%TO.C,U3*%
|
||||||
|
X10977500Y-30480000D03*
|
||||||
|
X10977500Y-29210000D03*
|
||||||
|
X10977500Y-27940000D03*
|
||||||
|
X19517500Y-27940000D03*
|
||||||
|
X19517500Y-29210000D03*
|
||||||
|
X19517500Y-30480000D03*
|
||||||
|
%TD*%
|
||||||
|
D11*
|
||||||
|
%TO.C,R3*%
|
||||||
|
X20607500Y-38735000D03*
|
||||||
|
X17507500Y-38735000D03*
|
||||||
|
%TD*%
|
||||||
|
D12*
|
||||||
|
%TO.C,C2*%
|
||||||
|
X7627500Y-48662500D03*
|
||||||
|
X7627500Y-52937500D03*
|
||||||
|
%TD*%
|
||||||
|
%TO.C,C4*%
|
||||||
|
X7627500Y-5482500D03*
|
||||||
|
X7627500Y-9757500D03*
|
||||||
|
%TD*%
|
||||||
|
D13*
|
||||||
|
%TO.C,D6*%
|
||||||
|
X9947500Y-33655000D03*
|
||||||
|
X7847500Y-33655000D03*
|
||||||
|
%TD*%
|
||||||
|
%TO.C,D7*%
|
||||||
|
X9947500Y-12065000D03*
|
||||||
|
X7847500Y-12065000D03*
|
||||||
|
%TD*%
|
||||||
|
D12*
|
||||||
|
%TO.C,C3*%
|
||||||
|
X7627500Y-27072500D03*
|
||||||
|
X7627500Y-31347500D03*
|
||||||
|
%TD*%
|
||||||
|
%TO.C,C1*%
|
||||||
|
X7627500Y-70252500D03*
|
||||||
|
X7627500Y-74527500D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.C,U4*%
|
||||||
|
X10977500Y-8890000D03*
|
||||||
|
X10977500Y-7620000D03*
|
||||||
|
X10977500Y-6350000D03*
|
||||||
|
X19517500Y-6350000D03*
|
||||||
|
X19517500Y-7620000D03*
|
||||||
|
X19517500Y-8890000D03*
|
||||||
|
%TD*%
|
||||||
|
D11*
|
||||||
|
%TO.C,R4*%
|
||||||
|
X20607500Y-36195000D03*
|
||||||
|
X17507500Y-36195000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.C,U1*%
|
||||||
|
X10977500Y-73660000D03*
|
||||||
|
X10977500Y-72390000D03*
|
||||||
|
X10977500Y-71120000D03*
|
||||||
|
X19517500Y-71120000D03*
|
||||||
|
X19517500Y-72390000D03*
|
||||||
|
X19517500Y-73660000D03*
|
||||||
|
%TD*%
|
||||||
|
D13*
|
||||||
|
%TO.C,D4*%
|
||||||
|
X12487500Y-76200000D03*
|
||||||
|
X10387500Y-76200000D03*
|
||||||
|
%TD*%
|
||||||
|
D11*
|
||||||
|
%TO.C,R1*%
|
||||||
|
X20607500Y-43815000D03*
|
||||||
|
X17507500Y-43815000D03*
|
||||||
|
%TD*%
|
||||||
|
D13*
|
||||||
|
%TO.C,D5*%
|
||||||
|
X9947500Y-55245000D03*
|
||||||
|
X7847500Y-55245000D03*
|
||||||
|
%TD*%
|
||||||
|
D11*
|
||||||
|
%TO.C,R2*%
|
||||||
|
X20607500Y-41275000D03*
|
||||||
|
X17507500Y-41275000D03*
|
||||||
|
%TD*%
|
||||||
|
D14*
|
||||||
|
%TO.C,R5*%
|
||||||
|
X23542500Y-25400000D03*
|
||||||
|
X19092500Y-25400000D03*
|
||||||
|
%TD*%
|
||||||
|
D10*
|
||||||
|
%TO.C,U2*%
|
||||||
|
X10977500Y-52070000D03*
|
||||||
|
X10977500Y-50800000D03*
|
||||||
|
X10977500Y-49530000D03*
|
||||||
|
X19517500Y-49530000D03*
|
||||||
|
X19517500Y-50800000D03*
|
||||||
|
X19517500Y-52070000D03*
|
||||||
|
%TD*%
|
||||||
|
M02*
|
||||||
1579
squeow_mod/squeow_mod-F_Silkscreen.gbr
Normal file
1579
squeow_mod/squeow_mod-F_Silkscreen.gbr
Normal file
File diff suppressed because it is too large
Load Diff
23
squeow_mod/squeow_mod-NPTH.drl
Normal file
23
squeow_mod/squeow_mod-NPTH.drl
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
M48
|
||||||
|
; DRILL file {KiCad 7.0.5+dfsg-2} date ven 30 giu 2023, 15:02:06
|
||||||
|
; FORMAT={-:-/ absolute / inch / decimal}
|
||||||
|
; #@! TF.CreationDate,2023-06-30T15:02:06+02:00
|
||||||
|
; #@! TF.GenerationSoftware,Kicad,Pcbnew,7.0.5+dfsg-2
|
||||||
|
; #@! TF.FileFunction,NonPlated,1,2,NPTH
|
||||||
|
FMAT,2
|
||||||
|
INCH
|
||||||
|
; #@! TA.AperFunction,NonPlated,NPTH,ComponentDrill
|
||||||
|
T1C0.1378
|
||||||
|
%
|
||||||
|
G90
|
||||||
|
G05
|
||||||
|
T1
|
||||||
|
X-0.4655Y-0.2
|
||||||
|
X-0.4655Y-0.625
|
||||||
|
X-0.4655Y-1.05
|
||||||
|
X-0.4655Y-1.475
|
||||||
|
X-0.4655Y-1.9
|
||||||
|
X-0.4655Y-2.325
|
||||||
|
X-0.4655Y-2.75
|
||||||
|
T0
|
||||||
|
M30
|
||||||
45
squeow_mod/squeow_mod-PTH.drl
Normal file
45
squeow_mod/squeow_mod-PTH.drl
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
M48
|
||||||
|
; DRILL file {KiCad 7.0.5+dfsg-2} date ven 30 giu 2023, 15:02:06
|
||||||
|
; FORMAT={-:-/ absolute / inch / decimal}
|
||||||
|
; #@! TF.CreationDate,2023-06-30T15:02:06+02:00
|
||||||
|
; #@! TF.GenerationSoftware,Kicad,Pcbnew,7.0.5+dfsg-2
|
||||||
|
; #@! TF.FileFunction,Plated,1,2,PTH
|
||||||
|
FMAT,2
|
||||||
|
INCH
|
||||||
|
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
|
||||||
|
T1C0.0394
|
||||||
|
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
|
||||||
|
T2C0.0472
|
||||||
|
%
|
||||||
|
G90
|
||||||
|
G05
|
||||||
|
T1
|
||||||
|
X0.9503Y-1.325
|
||||||
|
X0.9503Y-1.425
|
||||||
|
X0.9503Y-1.525
|
||||||
|
X0.9503Y-1.625
|
||||||
|
X0.9503Y-1.725
|
||||||
|
T2
|
||||||
|
X0.1566Y-0.1
|
||||||
|
X0.1566Y-0.2
|
||||||
|
X0.1566Y-0.3
|
||||||
|
X0.1566Y-0.525
|
||||||
|
X0.1566Y-0.625
|
||||||
|
X0.1566Y-0.725
|
||||||
|
X0.1566Y-0.95
|
||||||
|
X0.1566Y-1.05
|
||||||
|
X0.1566Y-1.15
|
||||||
|
X0.1566Y-1.375
|
||||||
|
X0.1566Y-1.475
|
||||||
|
X0.1566Y-1.575
|
||||||
|
X0.1566Y-1.8
|
||||||
|
X0.1566Y-1.9
|
||||||
|
X0.1566Y-2.0
|
||||||
|
X0.1566Y-2.225
|
||||||
|
X0.1566Y-2.325
|
||||||
|
X0.1566Y-2.425
|
||||||
|
X0.1566Y-2.65
|
||||||
|
X0.1566Y-2.75
|
||||||
|
X0.1566Y-2.85
|
||||||
|
T0
|
||||||
|
M30
|
||||||
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-09-13_162503.zip
Normal file
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-09-13_162503.zip
Normal file
Binary file not shown.
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-11-11_220552.zip
Normal file
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-11-11_220552.zip
Normal file
Binary file not shown.
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-11-11_221817.zip
Normal file
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-11-11_221817.zip
Normal file
Binary file not shown.
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-11-11_223404.zip
Normal file
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-11-11_223404.zip
Normal file
Binary file not shown.
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-11-11_224225.zip
Normal file
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-11-11_224225.zip
Normal file
Binary file not shown.
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-11-11_225139.zip
Normal file
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-11-11_225139.zip
Normal file
Binary file not shown.
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-11-13_011331.zip
Normal file
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-11-13_011331.zip
Normal file
Binary file not shown.
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-11-13_012331.zip
Normal file
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-11-13_012331.zip
Normal file
Binary file not shown.
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-11-13_013833.zip
Normal file
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-11-13_013833.zip
Normal file
Binary file not shown.
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-11-13_014437.zip
Normal file
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-11-13_014437.zip
Normal file
Binary file not shown.
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-11-13_015035.zip
Normal file
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-11-13_015035.zip
Normal file
Binary file not shown.
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-11-15_134056.zip
Normal file
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2022-11-15_134056.zip
Normal file
Binary file not shown.
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2023-03-15_222431.zip
Normal file
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2023-03-15_222431.zip
Normal file
Binary file not shown.
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2023-06-30_111052.zip
Normal file
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2023-06-30_111052.zip
Normal file
Binary file not shown.
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2023-06-30_120439.zip
Normal file
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2023-06-30_120439.zip
Normal file
Binary file not shown.
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2023-06-30_121643.zip
Normal file
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2023-06-30_121643.zip
Normal file
Binary file not shown.
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2023-06-30_151038.zip
Normal file
BIN
squeow_mod/squeow_mod-backups/squeow_mod-2023-06-30_151038.zip
Normal file
Binary file not shown.
125
squeow_mod/squeow_mod-job.gbrjob
Normal file
125
squeow_mod/squeow_mod-job.gbrjob
Normal file
@@ -0,0 +1,125 @@
|
|||||||
|
{
|
||||||
|
"Header": {
|
||||||
|
"GenerationSoftware": {
|
||||||
|
"Vendor": "KiCad",
|
||||||
|
"Application": "Pcbnew",
|
||||||
|
"Version": "7.0.5+dfsg-2"
|
||||||
|
},
|
||||||
|
"CreationDate": "2023-06-30T15:01:54+02:00"
|
||||||
|
},
|
||||||
|
"GeneralSpecs": {
|
||||||
|
"ProjectId": {
|
||||||
|
"Name": "squeow_mod",
|
||||||
|
"GUID": "73717565-6f77-45f6-9d6f-642e6b696361",
|
||||||
|
"Revision": "rev?"
|
||||||
|
},
|
||||||
|
"Size": {
|
||||||
|
"X": 26.135,
|
||||||
|
"Y": 79.475
|
||||||
|
},
|
||||||
|
"LayerNumber": 2,
|
||||||
|
"BoardThickness": 1.6,
|
||||||
|
"Finish": "None"
|
||||||
|
},
|
||||||
|
"DesignRules": [
|
||||||
|
{
|
||||||
|
"Layers": "Outer",
|
||||||
|
"PadToPad": 0.25,
|
||||||
|
"PadToTrack": 0.25,
|
||||||
|
"TrackToTrack": 0.25,
|
||||||
|
"MinLineWidth": 1.0
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"FilesAttributes": [
|
||||||
|
{
|
||||||
|
"Path": "squeow_mod-F_Cu.gbr",
|
||||||
|
"FileFunction": "Copper,L1,Top",
|
||||||
|
"FilePolarity": "Positive"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Path": "squeow_mod-B_Cu.gbr",
|
||||||
|
"FileFunction": "Copper,L2,Bot",
|
||||||
|
"FilePolarity": "Positive"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Path": "squeow_mod-F_Paste.gbr",
|
||||||
|
"FileFunction": "SolderPaste,Top",
|
||||||
|
"FilePolarity": "Positive"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Path": "squeow_mod-B_Paste.gbr",
|
||||||
|
"FileFunction": "SolderPaste,Bot",
|
||||||
|
"FilePolarity": "Positive"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Path": "squeow_mod-F_Silkscreen.gbr",
|
||||||
|
"FileFunction": "Legend,Top",
|
||||||
|
"FilePolarity": "Positive"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Path": "squeow_mod-B_Silkscreen.gbr",
|
||||||
|
"FileFunction": "Legend,Bot",
|
||||||
|
"FilePolarity": "Positive"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Path": "squeow_mod-F_Mask.gbr",
|
||||||
|
"FileFunction": "SolderMask,Top",
|
||||||
|
"FilePolarity": "Negative"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Path": "squeow_mod-B_Mask.gbr",
|
||||||
|
"FileFunction": "SolderMask,Bot",
|
||||||
|
"FilePolarity": "Negative"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Path": "squeow_mod-Edge_Cuts.gbr",
|
||||||
|
"FileFunction": "Profile",
|
||||||
|
"FilePolarity": "Positive"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"MaterialStackup": [
|
||||||
|
{
|
||||||
|
"Type": "Legend",
|
||||||
|
"Name": "Top Silk Screen"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Type": "SolderPaste",
|
||||||
|
"Name": "Top Solder Paste"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Type": "SolderMask",
|
||||||
|
"Thickness": 0.01,
|
||||||
|
"Name": "Top Solder Mask"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Type": "Copper",
|
||||||
|
"Thickness": 0.035,
|
||||||
|
"Name": "F.Cu"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Type": "Dielectric",
|
||||||
|
"Thickness": 1.51,
|
||||||
|
"Material": "FR4",
|
||||||
|
"Name": "F.Cu/B.Cu",
|
||||||
|
"Notes": "Type: dielectric layer 1 (from F.Cu to B.Cu)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Type": "Copper",
|
||||||
|
"Thickness": 0.035,
|
||||||
|
"Name": "B.Cu"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Type": "SolderMask",
|
||||||
|
"Thickness": 0.01,
|
||||||
|
"Name": "Bottom Solder Mask"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Type": "SolderPaste",
|
||||||
|
"Name": "Bottom Solder Paste"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Type": "Legend",
|
||||||
|
"Name": "Bottom Silk Screen"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
1656
squeow_mod/squeow_mod.kicad_pcb
Normal file
1656
squeow_mod/squeow_mod.kicad_pcb
Normal file
File diff suppressed because it is too large
Load Diff
77
squeow_mod/squeow_mod.kicad_prl
Normal file
77
squeow_mod/squeow_mod.kicad_prl
Normal file
@@ -0,0 +1,77 @@
|
|||||||
|
{
|
||||||
|
"board": {
|
||||||
|
"active_layer": 0,
|
||||||
|
"active_layer_preset": "",
|
||||||
|
"auto_track_width": false,
|
||||||
|
"hidden_netclasses": [],
|
||||||
|
"hidden_nets": [],
|
||||||
|
"high_contrast_mode": 0,
|
||||||
|
"net_color_mode": 1,
|
||||||
|
"opacity": {
|
||||||
|
"images": 0.6,
|
||||||
|
"pads": 1.0,
|
||||||
|
"tracks": 1.0,
|
||||||
|
"vias": 1.0,
|
||||||
|
"zones": 0.6
|
||||||
|
},
|
||||||
|
"ratsnest_display_mode": 0,
|
||||||
|
"selection_filter": {
|
||||||
|
"dimensions": true,
|
||||||
|
"footprints": true,
|
||||||
|
"graphics": true,
|
||||||
|
"keepouts": true,
|
||||||
|
"lockedItems": true,
|
||||||
|
"otherItems": true,
|
||||||
|
"pads": true,
|
||||||
|
"text": true,
|
||||||
|
"tracks": true,
|
||||||
|
"vias": true,
|
||||||
|
"zones": true
|
||||||
|
},
|
||||||
|
"visible_items": [
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
2,
|
||||||
|
3,
|
||||||
|
4,
|
||||||
|
5,
|
||||||
|
8,
|
||||||
|
9,
|
||||||
|
10,
|
||||||
|
11,
|
||||||
|
12,
|
||||||
|
13,
|
||||||
|
14,
|
||||||
|
15,
|
||||||
|
16,
|
||||||
|
17,
|
||||||
|
18,
|
||||||
|
19,
|
||||||
|
20,
|
||||||
|
21,
|
||||||
|
22,
|
||||||
|
23,
|
||||||
|
24,
|
||||||
|
25,
|
||||||
|
26,
|
||||||
|
27,
|
||||||
|
28,
|
||||||
|
29,
|
||||||
|
30,
|
||||||
|
32,
|
||||||
|
33,
|
||||||
|
34,
|
||||||
|
35,
|
||||||
|
36
|
||||||
|
],
|
||||||
|
"visible_layers": "0001020_ffffffff",
|
||||||
|
"zone_display_mode": 0
|
||||||
|
},
|
||||||
|
"meta": {
|
||||||
|
"filename": "squeow_mod.kicad_prl",
|
||||||
|
"version": 3
|
||||||
|
},
|
||||||
|
"project": {
|
||||||
|
"files": []
|
||||||
|
}
|
||||||
|
}
|
||||||
454
squeow_mod/squeow_mod.kicad_pro
Normal file
454
squeow_mod/squeow_mod.kicad_pro
Normal file
@@ -0,0 +1,454 @@
|
|||||||
|
{
|
||||||
|
"board": {
|
||||||
|
"3dviewports": [],
|
||||||
|
"design_settings": {
|
||||||
|
"defaults": {
|
||||||
|
"board_outline_line_width": 0.09999999999999999,
|
||||||
|
"copper_line_width": 0.19999999999999998,
|
||||||
|
"copper_text_italic": false,
|
||||||
|
"copper_text_size_h": 1.5,
|
||||||
|
"copper_text_size_v": 1.5,
|
||||||
|
"copper_text_thickness": 0.3,
|
||||||
|
"copper_text_upright": false,
|
||||||
|
"courtyard_line_width": 0.049999999999999996,
|
||||||
|
"dimension_precision": 4,
|
||||||
|
"dimension_units": 3,
|
||||||
|
"dimensions": {
|
||||||
|
"arrow_length": 1270000,
|
||||||
|
"extension_offset": 500000,
|
||||||
|
"keep_text_aligned": true,
|
||||||
|
"suppress_zeroes": false,
|
||||||
|
"text_position": 0,
|
||||||
|
"units_format": 1
|
||||||
|
},
|
||||||
|
"fab_line_width": 0.09999999999999999,
|
||||||
|
"fab_text_italic": false,
|
||||||
|
"fab_text_size_h": 1.0,
|
||||||
|
"fab_text_size_v": 1.0,
|
||||||
|
"fab_text_thickness": 0.15,
|
||||||
|
"fab_text_upright": false,
|
||||||
|
"other_line_width": 0.15,
|
||||||
|
"other_text_italic": false,
|
||||||
|
"other_text_size_h": 1.0,
|
||||||
|
"other_text_size_v": 1.0,
|
||||||
|
"other_text_thickness": 0.15,
|
||||||
|
"other_text_upright": false,
|
||||||
|
"pads": {
|
||||||
|
"drill": 0.762,
|
||||||
|
"height": 1.524,
|
||||||
|
"width": 1.524
|
||||||
|
},
|
||||||
|
"silk_line_width": 0.15,
|
||||||
|
"silk_text_italic": false,
|
||||||
|
"silk_text_size_h": 1.0,
|
||||||
|
"silk_text_size_v": 1.0,
|
||||||
|
"silk_text_thickness": 0.15,
|
||||||
|
"silk_text_upright": false,
|
||||||
|
"zones": {
|
||||||
|
"45_degree_only": false,
|
||||||
|
"min_clearance": 0.508
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"diff_pair_dimensions": [
|
||||||
|
{
|
||||||
|
"gap": 0.0,
|
||||||
|
"via_gap": 0.0,
|
||||||
|
"width": 0.0
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"drc_exclusions": [],
|
||||||
|
"meta": {
|
||||||
|
"version": 2
|
||||||
|
},
|
||||||
|
"rule_severities": {
|
||||||
|
"annular_width": "error",
|
||||||
|
"clearance": "error",
|
||||||
|
"copper_edge_clearance": "error",
|
||||||
|
"courtyards_overlap": "error",
|
||||||
|
"diff_pair_gap_out_of_range": "error",
|
||||||
|
"diff_pair_uncoupled_length_too_long": "error",
|
||||||
|
"drill_out_of_range": "error",
|
||||||
|
"duplicate_footprints": "warning",
|
||||||
|
"extra_footprint": "warning",
|
||||||
|
"footprint_type_mismatch": "error",
|
||||||
|
"hole_clearance": "error",
|
||||||
|
"hole_near_hole": "error",
|
||||||
|
"invalid_outline": "error",
|
||||||
|
"item_on_disabled_layer": "error",
|
||||||
|
"items_not_allowed": "error",
|
||||||
|
"length_out_of_range": "error",
|
||||||
|
"malformed_courtyard": "error",
|
||||||
|
"microvia_drill_out_of_range": "error",
|
||||||
|
"missing_courtyard": "ignore",
|
||||||
|
"missing_footprint": "warning",
|
||||||
|
"net_conflict": "warning",
|
||||||
|
"npth_inside_courtyard": "ignore",
|
||||||
|
"padstack": "error",
|
||||||
|
"pth_inside_courtyard": "ignore",
|
||||||
|
"shorting_items": "error",
|
||||||
|
"silk_over_copper": "warning",
|
||||||
|
"silk_overlap": "warning",
|
||||||
|
"skew_out_of_range": "error",
|
||||||
|
"through_hole_pad_without_hole": "error",
|
||||||
|
"too_many_vias": "error",
|
||||||
|
"track_dangling": "warning",
|
||||||
|
"track_width": "error",
|
||||||
|
"tracks_crossing": "error",
|
||||||
|
"unconnected_items": "error",
|
||||||
|
"unresolved_variable": "error",
|
||||||
|
"via_dangling": "warning",
|
||||||
|
"zone_has_empty_net": "error",
|
||||||
|
"zones_intersect": "error"
|
||||||
|
},
|
||||||
|
"rules": {
|
||||||
|
"allow_blind_buried_vias": false,
|
||||||
|
"allow_microvias": false,
|
||||||
|
"max_error": 0.005,
|
||||||
|
"min_clearance": 0.0,
|
||||||
|
"min_copper_edge_clearance": 0.0,
|
||||||
|
"min_hole_clearance": 0.25,
|
||||||
|
"min_hole_to_hole": 0.25,
|
||||||
|
"min_microvia_diameter": 0.19999999999999998,
|
||||||
|
"min_microvia_drill": 0.09999999999999999,
|
||||||
|
"min_silk_clearance": 0.0,
|
||||||
|
"min_through_hole_diameter": 0.3,
|
||||||
|
"min_track_width": 0.19999999999999998,
|
||||||
|
"min_via_annular_width": 0.049999999999999996,
|
||||||
|
"min_via_diameter": 0.39999999999999997,
|
||||||
|
"solder_mask_clearance": 0.0,
|
||||||
|
"solder_mask_min_width": 0.0,
|
||||||
|
"use_height_for_length_calcs": true
|
||||||
|
},
|
||||||
|
"track_widths": [
|
||||||
|
0.0,
|
||||||
|
0.5,
|
||||||
|
1.0,
|
||||||
|
2.0,
|
||||||
|
3.0,
|
||||||
|
4.0
|
||||||
|
],
|
||||||
|
"via_dimensions": [
|
||||||
|
{
|
||||||
|
"diameter": 0.0,
|
||||||
|
"drill": 0.0
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"zones_allow_external_fillets": false,
|
||||||
|
"zones_use_no_outline": true
|
||||||
|
},
|
||||||
|
"layer_presets": [],
|
||||||
|
"viewports": []
|
||||||
|
},
|
||||||
|
"boards": [],
|
||||||
|
"cvpcb": {
|
||||||
|
"equivalence_files": []
|
||||||
|
},
|
||||||
|
"erc": {
|
||||||
|
"erc_exclusions": [],
|
||||||
|
"meta": {
|
||||||
|
"version": 0
|
||||||
|
},
|
||||||
|
"pin_map": [
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
2,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
1,
|
||||||
|
2,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
1,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
2,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
[
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2,
|
||||||
|
2
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"rule_severities": {
|
||||||
|
"bus_definition_conflict": "error",
|
||||||
|
"bus_entry_needed": "error",
|
||||||
|
"bus_to_bus_conflict": "error",
|
||||||
|
"bus_to_net_conflict": "error",
|
||||||
|
"conflicting_netclasses": "error",
|
||||||
|
"different_unit_footprint": "error",
|
||||||
|
"different_unit_net": "error",
|
||||||
|
"duplicate_reference": "error",
|
||||||
|
"duplicate_sheet_names": "error",
|
||||||
|
"endpoint_off_grid": "warning",
|
||||||
|
"extra_units": "error",
|
||||||
|
"global_label_dangling": "warning",
|
||||||
|
"hier_label_mismatch": "error",
|
||||||
|
"label_dangling": "error",
|
||||||
|
"lib_symbol_issues": "warning",
|
||||||
|
"missing_bidi_pin": "warning",
|
||||||
|
"missing_input_pin": "warning",
|
||||||
|
"missing_power_pin": "error",
|
||||||
|
"missing_unit": "warning",
|
||||||
|
"multiple_net_names": "warning",
|
||||||
|
"net_not_bus_member": "warning",
|
||||||
|
"no_connect_connected": "warning",
|
||||||
|
"no_connect_dangling": "warning",
|
||||||
|
"pin_not_connected": "error",
|
||||||
|
"pin_not_driven": "error",
|
||||||
|
"pin_to_pin": "warning",
|
||||||
|
"power_pin_not_driven": "error",
|
||||||
|
"similar_labels": "warning",
|
||||||
|
"simulation_model_issue": "ignore",
|
||||||
|
"unannotated": "error",
|
||||||
|
"unit_value_mismatch": "error",
|
||||||
|
"unresolved_variable": "error",
|
||||||
|
"wire_dangling": "error"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"libraries": {
|
||||||
|
"pinned_footprint_libs": [],
|
||||||
|
"pinned_symbol_libs": []
|
||||||
|
},
|
||||||
|
"meta": {
|
||||||
|
"filename": "squeow_mod.kicad_pro",
|
||||||
|
"version": 1
|
||||||
|
},
|
||||||
|
"net_settings": {
|
||||||
|
"classes": [
|
||||||
|
{
|
||||||
|
"bus_width": 12,
|
||||||
|
"clearance": 0.25,
|
||||||
|
"diff_pair_gap": 0.25,
|
||||||
|
"diff_pair_via_gap": 0.25,
|
||||||
|
"diff_pair_width": 0.2,
|
||||||
|
"line_style": 0,
|
||||||
|
"microvia_diameter": 0.3,
|
||||||
|
"microvia_drill": 0.1,
|
||||||
|
"name": "Default",
|
||||||
|
"pcb_color": "rgba(0, 0, 0, 0.000)",
|
||||||
|
"schematic_color": "rgba(0, 0, 0, 0.000)",
|
||||||
|
"track_width": 0.25,
|
||||||
|
"via_diameter": 0.8,
|
||||||
|
"via_drill": 0.4,
|
||||||
|
"wire_width": 6
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"meta": {
|
||||||
|
"version": 3
|
||||||
|
},
|
||||||
|
"net_colors": null,
|
||||||
|
"netclass_assignments": null,
|
||||||
|
"netclass_patterns": []
|
||||||
|
},
|
||||||
|
"pcbnew": {
|
||||||
|
"last_paths": {
|
||||||
|
"gencad": "",
|
||||||
|
"idf": "",
|
||||||
|
"netlist": "",
|
||||||
|
"specctra_dsn": "",
|
||||||
|
"step": "",
|
||||||
|
"vrml": ""
|
||||||
|
},
|
||||||
|
"page_layout_descr_file": ""
|
||||||
|
},
|
||||||
|
"schematic": {
|
||||||
|
"annotate_start_num": 0,
|
||||||
|
"drawing": {
|
||||||
|
"dashed_lines_dash_length_ratio": 12.0,
|
||||||
|
"dashed_lines_gap_length_ratio": 3.0,
|
||||||
|
"default_line_thickness": 6.0,
|
||||||
|
"default_text_size": 50.0,
|
||||||
|
"field_names": [],
|
||||||
|
"intersheets_ref_own_page": false,
|
||||||
|
"intersheets_ref_prefix": "",
|
||||||
|
"intersheets_ref_short": false,
|
||||||
|
"intersheets_ref_show": false,
|
||||||
|
"intersheets_ref_suffix": "",
|
||||||
|
"junction_size_choice": 3,
|
||||||
|
"label_size_ratio": 0.375,
|
||||||
|
"pin_symbol_size": 25.0,
|
||||||
|
"text_offset_ratio": 0.15
|
||||||
|
},
|
||||||
|
"legacy_lib_dir": "",
|
||||||
|
"legacy_lib_list": [],
|
||||||
|
"meta": {
|
||||||
|
"version": 1
|
||||||
|
},
|
||||||
|
"net_format_name": "",
|
||||||
|
"ngspice": {
|
||||||
|
"fix_include_paths": true,
|
||||||
|
"fix_passive_vals": false,
|
||||||
|
"meta": {
|
||||||
|
"version": 0
|
||||||
|
},
|
||||||
|
"model_mode": 0,
|
||||||
|
"workbook_filename": ""
|
||||||
|
},
|
||||||
|
"page_layout_descr_file": "",
|
||||||
|
"plot_directory": "",
|
||||||
|
"spice_adjust_passive_values": false,
|
||||||
|
"spice_current_sheet_as_root": false,
|
||||||
|
"spice_external_command": "spice \"%I\"",
|
||||||
|
"spice_model_current_sheet_as_root": true,
|
||||||
|
"spice_save_all_currents": false,
|
||||||
|
"spice_save_all_voltages": false,
|
||||||
|
"subpart_first_id": 65,
|
||||||
|
"subpart_id_separator": 0
|
||||||
|
},
|
||||||
|
"sheets": [
|
||||||
|
[
|
||||||
|
"9f71c27a-ec7c-41dd-bc8e-e65fc2612166",
|
||||||
|
""
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"text_variables": {}
|
||||||
|
}
|
||||||
2270
squeow_mod/squeow_mod.kicad_sch
Normal file
2270
squeow_mod/squeow_mod.kicad_sch
Normal file
File diff suppressed because it is too large
Load Diff
14
squeow_sw/.mxproject
Normal file
14
squeow_sw/.mxproject
Normal file
File diff suppressed because one or more lines are too long
13139
squeow_sw/Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h
Normal file
13139
squeow_sw/Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h
Normal file
File diff suppressed because it is too large
Load Diff
259
squeow_sw/Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g4xx.h
Normal file
259
squeow_sw/Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g4xx.h
Normal file
@@ -0,0 +1,259 @@
|
|||||||
|
/**
|
||||||
|
******************************************************************************
|
||||||
|
* @file stm32g4xx.h
|
||||||
|
* @author MCD Application Team
|
||||||
|
* @brief CMSIS STM32G4xx Device Peripheral Access Layer Header File.
|
||||||
|
*
|
||||||
|
* The file is the unique include file that the application programmer
|
||||||
|
* is using in the C source code, usually in main.c. This file contains:
|
||||||
|
* - Configuration section that allows to select:
|
||||||
|
* - The STM32G4xx device used in the target application
|
||||||
|
* - To use or not the peripheral’s drivers in application code(i.e.
|
||||||
|
* code will be based on direct access to peripheral’s registers
|
||||||
|
* rather than drivers API), this option is controlled by
|
||||||
|
* "#define USE_HAL_DRIVER"
|
||||||
|
*
|
||||||
|
******************************************************************************
|
||||||
|
* @attention
|
||||||
|
*
|
||||||
|
* Copyright (c) 2019 STMicroelectronics.
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* This software is licensed under terms that can be found in the LICENSE file
|
||||||
|
* in the root directory of this software component.
|
||||||
|
* If no LICENSE file comes with this software, it is provided AS-IS.
|
||||||
|
*
|
||||||
|
******************************************************************************
|
||||||
|
*/
|
||||||
|
|
||||||
|
/** @addtogroup CMSIS
|
||||||
|
* @{
|
||||||
|
*/
|
||||||
|
|
||||||
|
/** @addtogroup stm32g4xx
|
||||||
|
* @{
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __STM32G4xx_H
|
||||||
|
#define __STM32G4xx_H
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
/** @addtogroup Library_configuration_section
|
||||||
|
* @{
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief STM32 Family
|
||||||
|
*/
|
||||||
|
#if !defined (STM32G4)
|
||||||
|
#define STM32G4
|
||||||
|
#endif /* STM32G4 */
|
||||||
|
|
||||||
|
/* Uncomment the line below according to the target STM32G4 device used in your
|
||||||
|
application
|
||||||
|
*/
|
||||||
|
|
||||||
|
#if !defined (STM32G431xx) && !defined (STM32G441xx) && !defined (STM32G471xx) && \
|
||||||
|
!defined (STM32G473xx) && !defined (STM32G474xx) && !defined (STM32G484xx) && \
|
||||||
|
!defined (STM32GBK1CB) && !defined (STM32G491xx) && !defined (STM32G4A1xx)
|
||||||
|
/* #define STM32G431xx */ /*!< STM32G431xx Devices */
|
||||||
|
/* #define STM32G441xx */ /*!< STM32G441xx Devices */
|
||||||
|
/* #define STM32G471xx */ /*!< STM32G471xx Devices */
|
||||||
|
/* #define STM32G473xx */ /*!< STM32G473xx Devices */
|
||||||
|
/* #define STM32G483xx */ /*!< STM32G483xx Devices */
|
||||||
|
/* #define STM32G474xx */ /*!< STM32G474xx Devices */
|
||||||
|
/* #define STM32G484xx */ /*!< STM32G484xx Devices */
|
||||||
|
/* #define STM32G491xx */ /*!< STM32G491xx Devices */
|
||||||
|
/* #define STM32G4A1xx */ /*!< STM32G4A1xx Devices */
|
||||||
|
/* #define STM32GBK1CB */ /*!< STM32GBK1CB Devices */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Tip: To avoid modifying this file each time you need to switch between these
|
||||||
|
devices, you can define the device in your toolchain compiler preprocessor.
|
||||||
|
*/
|
||||||
|
#if !defined (USE_HAL_DRIVER)
|
||||||
|
/**
|
||||||
|
* @brief Comment the line below if you will not use the peripherals drivers.
|
||||||
|
In this case, these drivers will not be included and the application code will
|
||||||
|
be based on direct access to peripherals registers
|
||||||
|
*/
|
||||||
|
/*#define USE_HAL_DRIVER */
|
||||||
|
#endif /* USE_HAL_DRIVER */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief CMSIS Device version number V1.2.2
|
||||||
|
*/
|
||||||
|
#define __STM32G4_CMSIS_VERSION_MAIN (0x01U) /*!< [31:24] main version */
|
||||||
|
#define __STM32G4_CMSIS_VERSION_SUB1 (0x02U) /*!< [23:16] sub1 version */
|
||||||
|
#define __STM32G4_CMSIS_VERSION_SUB2 (0x02U) /*!< [15:8] sub2 version */
|
||||||
|
#define __STM32G4_CMSIS_VERSION_RC (0x00U) /*!< [7:0] release candidate */
|
||||||
|
#define __STM32G4_CMSIS_VERSION ((__STM32G4_CMSIS_VERSION_MAIN << 24)\
|
||||||
|
|(__STM32G4_CMSIS_VERSION_SUB1 << 16)\
|
||||||
|
|(__STM32G4_CMSIS_VERSION_SUB2 << 8 )\
|
||||||
|
|(__STM32G4_CMSIS_VERSION_RC))
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @}
|
||||||
|
*/
|
||||||
|
|
||||||
|
/** @addtogroup Device_Included
|
||||||
|
* @{
|
||||||
|
*/
|
||||||
|
|
||||||
|
#if defined(STM32G431xx)
|
||||||
|
#include "stm32g431xx.h"
|
||||||
|
#elif defined(STM32G441xx)
|
||||||
|
#include "stm32g441xx.h"
|
||||||
|
#elif defined(STM32G471xx)
|
||||||
|
#include "stm32g471xx.h"
|
||||||
|
#elif defined(STM32G473xx)
|
||||||
|
#include "stm32g473xx.h"
|
||||||
|
#elif defined(STM32G483xx)
|
||||||
|
#include "stm32g483xx.h"
|
||||||
|
#elif defined(STM32G474xx)
|
||||||
|
#include "stm32g474xx.h"
|
||||||
|
#elif defined(STM32G484xx)
|
||||||
|
#include "stm32g484xx.h"
|
||||||
|
#elif defined(STM32G491xx)
|
||||||
|
#include "stm32g491xx.h"
|
||||||
|
#elif defined(STM32G4A1xx)
|
||||||
|
#include "stm32g4a1xx.h"
|
||||||
|
#elif defined(STM32GBK1CB)
|
||||||
|
#include "stm32gbk1cb.h"
|
||||||
|
#else
|
||||||
|
#error "Please select first the target STM32G4xx device used in your application (in stm32g4xx.h file)"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @}
|
||||||
|
*/
|
||||||
|
|
||||||
|
/** @addtogroup Exported_types
|
||||||
|
* @{
|
||||||
|
*/
|
||||||
|
typedef enum
|
||||||
|
{
|
||||||
|
RESET = 0,
|
||||||
|
SET = !RESET
|
||||||
|
} FlagStatus, ITStatus;
|
||||||
|
|
||||||
|
typedef enum
|
||||||
|
{
|
||||||
|
DISABLE = 0,
|
||||||
|
ENABLE = !DISABLE
|
||||||
|
} FunctionalState;
|
||||||
|
#define IS_FUNCTIONAL_STATE(STATE) (((STATE) == DISABLE) || ((STATE) == ENABLE))
|
||||||
|
|
||||||
|
typedef enum
|
||||||
|
{
|
||||||
|
SUCCESS = 0,
|
||||||
|
ERROR = !SUCCESS
|
||||||
|
} ErrorStatus;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @}
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/** @addtogroup Exported_macros
|
||||||
|
* @{
|
||||||
|
*/
|
||||||
|
#define SET_BIT(REG, BIT) ((REG) |= (BIT))
|
||||||
|
|
||||||
|
#define CLEAR_BIT(REG, BIT) ((REG) &= ~(BIT))
|
||||||
|
|
||||||
|
#define READ_BIT(REG, BIT) ((REG) & (BIT))
|
||||||
|
|
||||||
|
#define CLEAR_REG(REG) ((REG) = (0x0))
|
||||||
|
|
||||||
|
#define WRITE_REG(REG, VAL) ((REG) = (VAL))
|
||||||
|
|
||||||
|
#define READ_REG(REG) ((REG))
|
||||||
|
|
||||||
|
#define MODIFY_REG(REG, CLEARMASK, SETMASK) WRITE_REG((REG), (((READ_REG(REG)) & (~(CLEARMASK))) | (SETMASK)))
|
||||||
|
|
||||||
|
#define POSITION_VAL(VAL) (__CLZ(__RBIT(VAL)))
|
||||||
|
|
||||||
|
/* Use of CMSIS compiler intrinsics for register exclusive access */
|
||||||
|
/* Atomic 32-bit register access macro to set one or several bits */
|
||||||
|
#define ATOMIC_SET_BIT(REG, BIT) \
|
||||||
|
do { \
|
||||||
|
uint32_t val; \
|
||||||
|
do { \
|
||||||
|
val = __LDREXW((__IO uint32_t *)&(REG)) | (BIT); \
|
||||||
|
} while ((__STREXW(val,(__IO uint32_t *)&(REG))) != 0U); \
|
||||||
|
} while(0)
|
||||||
|
|
||||||
|
/* Atomic 32-bit register access macro to clear one or several bits */
|
||||||
|
#define ATOMIC_CLEAR_BIT(REG, BIT) \
|
||||||
|
do { \
|
||||||
|
uint32_t val; \
|
||||||
|
do { \
|
||||||
|
val = __LDREXW((__IO uint32_t *)&(REG)) & ~(BIT); \
|
||||||
|
} while ((__STREXW(val,(__IO uint32_t *)&(REG))) != 0U); \
|
||||||
|
} while(0)
|
||||||
|
|
||||||
|
/* Atomic 32-bit register access macro to clear and set one or several bits */
|
||||||
|
#define ATOMIC_MODIFY_REG(REG, CLEARMSK, SETMASK) \
|
||||||
|
do { \
|
||||||
|
uint32_t val; \
|
||||||
|
do { \
|
||||||
|
val = (__LDREXW((__IO uint32_t *)&(REG)) & ~(CLEARMSK)) | (SETMASK); \
|
||||||
|
} while ((__STREXW(val,(__IO uint32_t *)&(REG))) != 0U); \
|
||||||
|
} while(0)
|
||||||
|
|
||||||
|
/* Atomic 16-bit register access macro to set one or several bits */
|
||||||
|
#define ATOMIC_SETH_BIT(REG, BIT) \
|
||||||
|
do { \
|
||||||
|
uint16_t val; \
|
||||||
|
do { \
|
||||||
|
val = __LDREXH((__IO uint16_t *)&(REG)) | (BIT); \
|
||||||
|
} while ((__STREXH(val,(__IO uint16_t *)&(REG))) != 0U); \
|
||||||
|
} while(0)
|
||||||
|
|
||||||
|
/* Atomic 16-bit register access macro to clear one or several bits */
|
||||||
|
#define ATOMIC_CLEARH_BIT(REG, BIT) \
|
||||||
|
do { \
|
||||||
|
uint16_t val; \
|
||||||
|
do { \
|
||||||
|
val = __LDREXH((__IO uint16_t *)&(REG)) & ~(BIT); \
|
||||||
|
} while ((__STREXH(val,(__IO uint16_t *)&(REG))) != 0U); \
|
||||||
|
} while(0)
|
||||||
|
|
||||||
|
/* Atomic 16-bit register access macro to clear and set one or several bits */
|
||||||
|
#define ATOMIC_MODIFYH_REG(REG, CLEARMSK, SETMASK) \
|
||||||
|
do { \
|
||||||
|
uint16_t val; \
|
||||||
|
do { \
|
||||||
|
val = (__LDREXH((__IO uint16_t *)&(REG)) & ~(CLEARMSK)) | (SETMASK); \
|
||||||
|
} while ((__STREXH(val,(__IO uint16_t *)&(REG))) != 0U); \
|
||||||
|
} while(0)
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @}
|
||||||
|
*/
|
||||||
|
|
||||||
|
#if defined (USE_HAL_DRIVER)
|
||||||
|
#include "stm32g4xx_hal.h"
|
||||||
|
#endif /* USE_HAL_DRIVER */
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
#endif /* __STM32G4xx_H */
|
||||||
|
/**
|
||||||
|
* @}
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @}
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -0,0 +1,104 @@
|
|||||||
|
/**
|
||||||
|
******************************************************************************
|
||||||
|
* @file system_stm32g4xx.h
|
||||||
|
* @author MCD Application Team
|
||||||
|
* @brief CMSIS Cortex-M4 Device System Source File for STM32G4xx devices.
|
||||||
|
******************************************************************************
|
||||||
|
* @attention
|
||||||
|
*
|
||||||
|
* Copyright (c) 2019 STMicroelectronics.
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* This software is licensed under terms that can be found in the LICENSE file
|
||||||
|
* in the root directory of this software component.
|
||||||
|
* If no LICENSE file comes with this software, it is provided AS-IS.
|
||||||
|
*
|
||||||
|
******************************************************************************
|
||||||
|
*/
|
||||||
|
|
||||||
|
/** @addtogroup CMSIS
|
||||||
|
* @{
|
||||||
|
*/
|
||||||
|
|
||||||
|
/** @addtogroup stm32g4xx_system
|
||||||
|
* @{
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Define to prevent recursive inclusion
|
||||||
|
*/
|
||||||
|
#ifndef __SYSTEM_STM32G4XX_H
|
||||||
|
#define __SYSTEM_STM32G4XX_H
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/** @addtogroup STM32G4xx_System_Includes
|
||||||
|
* @{
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @}
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/** @addtogroup STM32G4xx_System_Exported_Variables
|
||||||
|
* @{
|
||||||
|
*/
|
||||||
|
/* The SystemCoreClock variable is updated in three ways:
|
||||||
|
1) by calling CMSIS function SystemCoreClockUpdate()
|
||||||
|
2) by calling HAL API function HAL_RCC_GetSysClockFreq()
|
||||||
|
3) each time HAL_RCC_ClockConfig() is called to configure the system clock frequency
|
||||||
|
Note: If you use this function to configure the system clock; then there
|
||||||
|
is no need to call the 2 first functions listed above, since SystemCoreClock
|
||||||
|
variable is updated automatically.
|
||||||
|
*/
|
||||||
|
extern uint32_t SystemCoreClock; /*!< System Clock Frequency (Core Clock) */
|
||||||
|
|
||||||
|
extern const uint8_t AHBPrescTable[16]; /*!< AHB prescalers table values */
|
||||||
|
extern const uint8_t APBPrescTable[8]; /*!< APB prescalers table values */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @}
|
||||||
|
*/
|
||||||
|
|
||||||
|
/** @addtogroup STM32G4xx_System_Exported_Constants
|
||||||
|
* @{
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @}
|
||||||
|
*/
|
||||||
|
|
||||||
|
/** @addtogroup STM32G4xx_System_Exported_Macros
|
||||||
|
* @{
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @}
|
||||||
|
*/
|
||||||
|
|
||||||
|
/** @addtogroup STM32G4xx_System_Exported_Functions
|
||||||
|
* @{
|
||||||
|
*/
|
||||||
|
|
||||||
|
extern void SystemInit(void);
|
||||||
|
extern void SystemCoreClockUpdate(void);
|
||||||
|
/**
|
||||||
|
* @}
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /*__SYSTEM_STM32G4XX_H */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @}
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @}
|
||||||
|
*/
|
||||||
6
squeow_sw/Drivers/CMSIS/Device/ST/STM32G4xx/LICENSE.txt
Normal file
6
squeow_sw/Drivers/CMSIS/Device/ST/STM32G4xx/LICENSE.txt
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
This software component is provided to you as part of a software package and
|
||||||
|
applicable license terms are in the Package_license file. If you received this
|
||||||
|
software component outside of a package or without applicable license terms,
|
||||||
|
the terms of the Apache-2.0 license shall apply.
|
||||||
|
You may obtain a copy of the Apache-2.0 at:
|
||||||
|
https://opensource.org/licenses/Apache-2.0
|
||||||
894
squeow_sw/Drivers/CMSIS/Include/cmsis_armcc.h
Normal file
894
squeow_sw/Drivers/CMSIS/Include/cmsis_armcc.h
Normal file
@@ -0,0 +1,894 @@
|
|||||||
|
/**************************************************************************//**
|
||||||
|
* @file cmsis_armcc.h
|
||||||
|
* @brief CMSIS compiler ARMCC (Arm Compiler 5) header file
|
||||||
|
* @version V5.1.0
|
||||||
|
* @date 08. May 2019
|
||||||
|
******************************************************************************/
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2009-2019 Arm Limited. All rights reserved.
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the License); you may
|
||||||
|
* not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an AS IS BASIS, WITHOUT
|
||||||
|
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __CMSIS_ARMCC_H
|
||||||
|
#define __CMSIS_ARMCC_H
|
||||||
|
|
||||||
|
|
||||||
|
#if defined(__ARMCC_VERSION) && (__ARMCC_VERSION < 400677)
|
||||||
|
#error "Please use Arm Compiler Toolchain V4.0.677 or later!"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* CMSIS compiler control architecture macros */
|
||||||
|
#if ((defined (__TARGET_ARCH_6_M ) && (__TARGET_ARCH_6_M == 1)) || \
|
||||||
|
(defined (__TARGET_ARCH_6S_M ) && (__TARGET_ARCH_6S_M == 1)) )
|
||||||
|
#define __ARM_ARCH_6M__ 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if (defined (__TARGET_ARCH_7_M ) && (__TARGET_ARCH_7_M == 1))
|
||||||
|
#define __ARM_ARCH_7M__ 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if (defined (__TARGET_ARCH_7E_M) && (__TARGET_ARCH_7E_M == 1))
|
||||||
|
#define __ARM_ARCH_7EM__ 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* __ARM_ARCH_8M_BASE__ not applicable */
|
||||||
|
/* __ARM_ARCH_8M_MAIN__ not applicable */
|
||||||
|
|
||||||
|
/* CMSIS compiler control DSP macros */
|
||||||
|
#if ((defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) )
|
||||||
|
#define __ARM_FEATURE_DSP 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* CMSIS compiler specific defines */
|
||||||
|
#ifndef __ASM
|
||||||
|
#define __ASM __asm
|
||||||
|
#endif
|
||||||
|
#ifndef __INLINE
|
||||||
|
#define __INLINE __inline
|
||||||
|
#endif
|
||||||
|
#ifndef __STATIC_INLINE
|
||||||
|
#define __STATIC_INLINE static __inline
|
||||||
|
#endif
|
||||||
|
#ifndef __STATIC_FORCEINLINE
|
||||||
|
#define __STATIC_FORCEINLINE static __forceinline
|
||||||
|
#endif
|
||||||
|
#ifndef __NO_RETURN
|
||||||
|
#define __NO_RETURN __declspec(noreturn)
|
||||||
|
#endif
|
||||||
|
#ifndef __USED
|
||||||
|
#define __USED __attribute__((used))
|
||||||
|
#endif
|
||||||
|
#ifndef __WEAK
|
||||||
|
#define __WEAK __attribute__((weak))
|
||||||
|
#endif
|
||||||
|
#ifndef __PACKED
|
||||||
|
#define __PACKED __attribute__((packed))
|
||||||
|
#endif
|
||||||
|
#ifndef __PACKED_STRUCT
|
||||||
|
#define __PACKED_STRUCT __packed struct
|
||||||
|
#endif
|
||||||
|
#ifndef __PACKED_UNION
|
||||||
|
#define __PACKED_UNION __packed union
|
||||||
|
#endif
|
||||||
|
#ifndef __UNALIGNED_UINT32 /* deprecated */
|
||||||
|
#define __UNALIGNED_UINT32(x) (*((__packed uint32_t *)(x)))
|
||||||
|
#endif
|
||||||
|
#ifndef __UNALIGNED_UINT16_WRITE
|
||||||
|
#define __UNALIGNED_UINT16_WRITE(addr, val) ((*((__packed uint16_t *)(addr))) = (val))
|
||||||
|
#endif
|
||||||
|
#ifndef __UNALIGNED_UINT16_READ
|
||||||
|
#define __UNALIGNED_UINT16_READ(addr) (*((const __packed uint16_t *)(addr)))
|
||||||
|
#endif
|
||||||
|
#ifndef __UNALIGNED_UINT32_WRITE
|
||||||
|
#define __UNALIGNED_UINT32_WRITE(addr, val) ((*((__packed uint32_t *)(addr))) = (val))
|
||||||
|
#endif
|
||||||
|
#ifndef __UNALIGNED_UINT32_READ
|
||||||
|
#define __UNALIGNED_UINT32_READ(addr) (*((const __packed uint32_t *)(addr)))
|
||||||
|
#endif
|
||||||
|
#ifndef __ALIGNED
|
||||||
|
#define __ALIGNED(x) __attribute__((aligned(x)))
|
||||||
|
#endif
|
||||||
|
#ifndef __RESTRICT
|
||||||
|
#define __RESTRICT __restrict
|
||||||
|
#endif
|
||||||
|
#ifndef __COMPILER_BARRIER
|
||||||
|
#define __COMPILER_BARRIER() __memory_changed()
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* ######################### Startup and Lowlevel Init ######################## */
|
||||||
|
|
||||||
|
#ifndef __PROGRAM_START
|
||||||
|
#define __PROGRAM_START __main
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __INITIAL_SP
|
||||||
|
#define __INITIAL_SP Image$$ARM_LIB_STACK$$ZI$$Limit
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __STACK_LIMIT
|
||||||
|
#define __STACK_LIMIT Image$$ARM_LIB_STACK$$ZI$$Base
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __VECTOR_TABLE
|
||||||
|
#define __VECTOR_TABLE __Vectors
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __VECTOR_TABLE_ATTRIBUTE
|
||||||
|
#define __VECTOR_TABLE_ATTRIBUTE __attribute((used, section("RESET")))
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* ########################### Core Function Access ########################### */
|
||||||
|
/** \ingroup CMSIS_Core_FunctionInterface
|
||||||
|
\defgroup CMSIS_Core_RegAccFunctions CMSIS Core Register Access Functions
|
||||||
|
@{
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Enable IRQ Interrupts
|
||||||
|
\details Enables IRQ interrupts by clearing the I-bit in the CPSR.
|
||||||
|
Can only be executed in Privileged modes.
|
||||||
|
*/
|
||||||
|
/* intrinsic void __enable_irq(); */
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Disable IRQ Interrupts
|
||||||
|
\details Disables IRQ interrupts by setting the I-bit in the CPSR.
|
||||||
|
Can only be executed in Privileged modes.
|
||||||
|
*/
|
||||||
|
/* intrinsic void __disable_irq(); */
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Get Control Register
|
||||||
|
\details Returns the content of the Control Register.
|
||||||
|
\return Control Register value
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE uint32_t __get_CONTROL(void)
|
||||||
|
{
|
||||||
|
register uint32_t __regControl __ASM("control");
|
||||||
|
return(__regControl);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Set Control Register
|
||||||
|
\details Writes the given value to the Control Register.
|
||||||
|
\param [in] control Control Register value to set
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE void __set_CONTROL(uint32_t control)
|
||||||
|
{
|
||||||
|
register uint32_t __regControl __ASM("control");
|
||||||
|
__regControl = control;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Get IPSR Register
|
||||||
|
\details Returns the content of the IPSR Register.
|
||||||
|
\return IPSR Register value
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE uint32_t __get_IPSR(void)
|
||||||
|
{
|
||||||
|
register uint32_t __regIPSR __ASM("ipsr");
|
||||||
|
return(__regIPSR);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Get APSR Register
|
||||||
|
\details Returns the content of the APSR Register.
|
||||||
|
\return APSR Register value
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE uint32_t __get_APSR(void)
|
||||||
|
{
|
||||||
|
register uint32_t __regAPSR __ASM("apsr");
|
||||||
|
return(__regAPSR);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Get xPSR Register
|
||||||
|
\details Returns the content of the xPSR Register.
|
||||||
|
\return xPSR Register value
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE uint32_t __get_xPSR(void)
|
||||||
|
{
|
||||||
|
register uint32_t __regXPSR __ASM("xpsr");
|
||||||
|
return(__regXPSR);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Get Process Stack Pointer
|
||||||
|
\details Returns the current value of the Process Stack Pointer (PSP).
|
||||||
|
\return PSP Register value
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE uint32_t __get_PSP(void)
|
||||||
|
{
|
||||||
|
register uint32_t __regProcessStackPointer __ASM("psp");
|
||||||
|
return(__regProcessStackPointer);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Set Process Stack Pointer
|
||||||
|
\details Assigns the given value to the Process Stack Pointer (PSP).
|
||||||
|
\param [in] topOfProcStack Process Stack Pointer value to set
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE void __set_PSP(uint32_t topOfProcStack)
|
||||||
|
{
|
||||||
|
register uint32_t __regProcessStackPointer __ASM("psp");
|
||||||
|
__regProcessStackPointer = topOfProcStack;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Get Main Stack Pointer
|
||||||
|
\details Returns the current value of the Main Stack Pointer (MSP).
|
||||||
|
\return MSP Register value
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE uint32_t __get_MSP(void)
|
||||||
|
{
|
||||||
|
register uint32_t __regMainStackPointer __ASM("msp");
|
||||||
|
return(__regMainStackPointer);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Set Main Stack Pointer
|
||||||
|
\details Assigns the given value to the Main Stack Pointer (MSP).
|
||||||
|
\param [in] topOfMainStack Main Stack Pointer value to set
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE void __set_MSP(uint32_t topOfMainStack)
|
||||||
|
{
|
||||||
|
register uint32_t __regMainStackPointer __ASM("msp");
|
||||||
|
__regMainStackPointer = topOfMainStack;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Get Priority Mask
|
||||||
|
\details Returns the current state of the priority mask bit from the Priority Mask Register.
|
||||||
|
\return Priority Mask value
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE uint32_t __get_PRIMASK(void)
|
||||||
|
{
|
||||||
|
register uint32_t __regPriMask __ASM("primask");
|
||||||
|
return(__regPriMask);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Set Priority Mask
|
||||||
|
\details Assigns the given value to the Priority Mask Register.
|
||||||
|
\param [in] priMask Priority Mask
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE void __set_PRIMASK(uint32_t priMask)
|
||||||
|
{
|
||||||
|
register uint32_t __regPriMask __ASM("primask");
|
||||||
|
__regPriMask = (priMask);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \
|
||||||
|
(defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) )
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Enable FIQ
|
||||||
|
\details Enables FIQ interrupts by clearing the F-bit in the CPSR.
|
||||||
|
Can only be executed in Privileged modes.
|
||||||
|
*/
|
||||||
|
#define __enable_fault_irq __enable_fiq
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Disable FIQ
|
||||||
|
\details Disables FIQ interrupts by setting the F-bit in the CPSR.
|
||||||
|
Can only be executed in Privileged modes.
|
||||||
|
*/
|
||||||
|
#define __disable_fault_irq __disable_fiq
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Get Base Priority
|
||||||
|
\details Returns the current value of the Base Priority register.
|
||||||
|
\return Base Priority register value
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE uint32_t __get_BASEPRI(void)
|
||||||
|
{
|
||||||
|
register uint32_t __regBasePri __ASM("basepri");
|
||||||
|
return(__regBasePri);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Set Base Priority
|
||||||
|
\details Assigns the given value to the Base Priority register.
|
||||||
|
\param [in] basePri Base Priority value to set
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE void __set_BASEPRI(uint32_t basePri)
|
||||||
|
{
|
||||||
|
register uint32_t __regBasePri __ASM("basepri");
|
||||||
|
__regBasePri = (basePri & 0xFFU);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Set Base Priority with condition
|
||||||
|
\details Assigns the given value to the Base Priority register only if BASEPRI masking is disabled,
|
||||||
|
or the new value increases the BASEPRI priority level.
|
||||||
|
\param [in] basePri Base Priority value to set
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE void __set_BASEPRI_MAX(uint32_t basePri)
|
||||||
|
{
|
||||||
|
register uint32_t __regBasePriMax __ASM("basepri_max");
|
||||||
|
__regBasePriMax = (basePri & 0xFFU);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Get Fault Mask
|
||||||
|
\details Returns the current value of the Fault Mask register.
|
||||||
|
\return Fault Mask register value
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE uint32_t __get_FAULTMASK(void)
|
||||||
|
{
|
||||||
|
register uint32_t __regFaultMask __ASM("faultmask");
|
||||||
|
return(__regFaultMask);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Set Fault Mask
|
||||||
|
\details Assigns the given value to the Fault Mask register.
|
||||||
|
\param [in] faultMask Fault Mask value to set
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE void __set_FAULTMASK(uint32_t faultMask)
|
||||||
|
{
|
||||||
|
register uint32_t __regFaultMask __ASM("faultmask");
|
||||||
|
__regFaultMask = (faultMask & (uint32_t)1U);
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \
|
||||||
|
(defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) ) */
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Get FPSCR
|
||||||
|
\details Returns the current value of the Floating Point Status/Control register.
|
||||||
|
\return Floating Point Status/Control register value
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE uint32_t __get_FPSCR(void)
|
||||||
|
{
|
||||||
|
#if ((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \
|
||||||
|
(defined (__FPU_USED ) && (__FPU_USED == 1U)) )
|
||||||
|
register uint32_t __regfpscr __ASM("fpscr");
|
||||||
|
return(__regfpscr);
|
||||||
|
#else
|
||||||
|
return(0U);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Set FPSCR
|
||||||
|
\details Assigns the given value to the Floating Point Status/Control register.
|
||||||
|
\param [in] fpscr Floating Point Status/Control value to set
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE void __set_FPSCR(uint32_t fpscr)
|
||||||
|
{
|
||||||
|
#if ((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \
|
||||||
|
(defined (__FPU_USED ) && (__FPU_USED == 1U)) )
|
||||||
|
register uint32_t __regfpscr __ASM("fpscr");
|
||||||
|
__regfpscr = (fpscr);
|
||||||
|
#else
|
||||||
|
(void)fpscr;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*@} end of CMSIS_Core_RegAccFunctions */
|
||||||
|
|
||||||
|
|
||||||
|
/* ########################## Core Instruction Access ######################### */
|
||||||
|
/** \defgroup CMSIS_Core_InstructionInterface CMSIS Core Instruction Interface
|
||||||
|
Access to dedicated instructions
|
||||||
|
@{
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief No Operation
|
||||||
|
\details No Operation does nothing. This instruction can be used for code alignment purposes.
|
||||||
|
*/
|
||||||
|
#define __NOP __nop
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Wait For Interrupt
|
||||||
|
\details Wait For Interrupt is a hint instruction that suspends execution until one of a number of events occurs.
|
||||||
|
*/
|
||||||
|
#define __WFI __wfi
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Wait For Event
|
||||||
|
\details Wait For Event is a hint instruction that permits the processor to enter
|
||||||
|
a low-power state until one of a number of events occurs.
|
||||||
|
*/
|
||||||
|
#define __WFE __wfe
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Send Event
|
||||||
|
\details Send Event is a hint instruction. It causes an event to be signaled to the CPU.
|
||||||
|
*/
|
||||||
|
#define __SEV __sev
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Instruction Synchronization Barrier
|
||||||
|
\details Instruction Synchronization Barrier flushes the pipeline in the processor,
|
||||||
|
so that all instructions following the ISB are fetched from cache or memory,
|
||||||
|
after the instruction has been completed.
|
||||||
|
*/
|
||||||
|
#define __ISB() do {\
|
||||||
|
__schedule_barrier();\
|
||||||
|
__isb(0xF);\
|
||||||
|
__schedule_barrier();\
|
||||||
|
} while (0U)
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Data Synchronization Barrier
|
||||||
|
\details Acts as a special kind of Data Memory Barrier.
|
||||||
|
It completes when all explicit memory accesses before this instruction complete.
|
||||||
|
*/
|
||||||
|
#define __DSB() do {\
|
||||||
|
__schedule_barrier();\
|
||||||
|
__dsb(0xF);\
|
||||||
|
__schedule_barrier();\
|
||||||
|
} while (0U)
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Data Memory Barrier
|
||||||
|
\details Ensures the apparent order of the explicit memory operations before
|
||||||
|
and after the instruction, without ensuring their completion.
|
||||||
|
*/
|
||||||
|
#define __DMB() do {\
|
||||||
|
__schedule_barrier();\
|
||||||
|
__dmb(0xF);\
|
||||||
|
__schedule_barrier();\
|
||||||
|
} while (0U)
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Reverse byte order (32 bit)
|
||||||
|
\details Reverses the byte order in unsigned integer value. For example, 0x12345678 becomes 0x78563412.
|
||||||
|
\param [in] value Value to reverse
|
||||||
|
\return Reversed value
|
||||||
|
*/
|
||||||
|
#define __REV __rev
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Reverse byte order (16 bit)
|
||||||
|
\details Reverses the byte order within each halfword of a word. For example, 0x12345678 becomes 0x34127856.
|
||||||
|
\param [in] value Value to reverse
|
||||||
|
\return Reversed value
|
||||||
|
*/
|
||||||
|
#ifndef __NO_EMBEDDED_ASM
|
||||||
|
__attribute__((section(".rev16_text"))) __STATIC_INLINE __ASM uint32_t __REV16(uint32_t value)
|
||||||
|
{
|
||||||
|
rev16 r0, r0
|
||||||
|
bx lr
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Reverse byte order (16 bit)
|
||||||
|
\details Reverses the byte order in a 16-bit value and returns the signed 16-bit result. For example, 0x0080 becomes 0x8000.
|
||||||
|
\param [in] value Value to reverse
|
||||||
|
\return Reversed value
|
||||||
|
*/
|
||||||
|
#ifndef __NO_EMBEDDED_ASM
|
||||||
|
__attribute__((section(".revsh_text"))) __STATIC_INLINE __ASM int16_t __REVSH(int16_t value)
|
||||||
|
{
|
||||||
|
revsh r0, r0
|
||||||
|
bx lr
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Rotate Right in unsigned value (32 bit)
|
||||||
|
\details Rotate Right (immediate) provides the value of the contents of a register rotated by a variable number of bits.
|
||||||
|
\param [in] op1 Value to rotate
|
||||||
|
\param [in] op2 Number of Bits to rotate
|
||||||
|
\return Rotated value
|
||||||
|
*/
|
||||||
|
#define __ROR __ror
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Breakpoint
|
||||||
|
\details Causes the processor to enter Debug state.
|
||||||
|
Debug tools can use this to investigate system state when the instruction at a particular address is reached.
|
||||||
|
\param [in] value is ignored by the processor.
|
||||||
|
If required, a debugger can use it to store additional information about the breakpoint.
|
||||||
|
*/
|
||||||
|
#define __BKPT(value) __breakpoint(value)
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Reverse bit order of value
|
||||||
|
\details Reverses the bit order of the given value.
|
||||||
|
\param [in] value Value to reverse
|
||||||
|
\return Reversed value
|
||||||
|
*/
|
||||||
|
#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \
|
||||||
|
(defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) )
|
||||||
|
#define __RBIT __rbit
|
||||||
|
#else
|
||||||
|
__attribute__((always_inline)) __STATIC_INLINE uint32_t __RBIT(uint32_t value)
|
||||||
|
{
|
||||||
|
uint32_t result;
|
||||||
|
uint32_t s = (4U /*sizeof(v)*/ * 8U) - 1U; /* extra shift needed at end */
|
||||||
|
|
||||||
|
result = value; /* r will be reversed bits of v; first get LSB of v */
|
||||||
|
for (value >>= 1U; value != 0U; value >>= 1U)
|
||||||
|
{
|
||||||
|
result <<= 1U;
|
||||||
|
result |= value & 1U;
|
||||||
|
s--;
|
||||||
|
}
|
||||||
|
result <<= s; /* shift when v's highest bits are zero */
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Count leading zeros
|
||||||
|
\details Counts the number of leading zeros of a data value.
|
||||||
|
\param [in] value Value to count the leading zeros
|
||||||
|
\return number of leading zeros in value
|
||||||
|
*/
|
||||||
|
#define __CLZ __clz
|
||||||
|
|
||||||
|
|
||||||
|
#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \
|
||||||
|
(defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) )
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief LDR Exclusive (8 bit)
|
||||||
|
\details Executes a exclusive LDR instruction for 8 bit value.
|
||||||
|
\param [in] ptr Pointer to data
|
||||||
|
\return value of type uint8_t at (*ptr)
|
||||||
|
*/
|
||||||
|
#if defined(__ARMCC_VERSION) && (__ARMCC_VERSION < 5060020)
|
||||||
|
#define __LDREXB(ptr) ((uint8_t ) __ldrex(ptr))
|
||||||
|
#else
|
||||||
|
#define __LDREXB(ptr) _Pragma("push") _Pragma("diag_suppress 3731") ((uint8_t ) __ldrex(ptr)) _Pragma("pop")
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief LDR Exclusive (16 bit)
|
||||||
|
\details Executes a exclusive LDR instruction for 16 bit values.
|
||||||
|
\param [in] ptr Pointer to data
|
||||||
|
\return value of type uint16_t at (*ptr)
|
||||||
|
*/
|
||||||
|
#if defined(__ARMCC_VERSION) && (__ARMCC_VERSION < 5060020)
|
||||||
|
#define __LDREXH(ptr) ((uint16_t) __ldrex(ptr))
|
||||||
|
#else
|
||||||
|
#define __LDREXH(ptr) _Pragma("push") _Pragma("diag_suppress 3731") ((uint16_t) __ldrex(ptr)) _Pragma("pop")
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief LDR Exclusive (32 bit)
|
||||||
|
\details Executes a exclusive LDR instruction for 32 bit values.
|
||||||
|
\param [in] ptr Pointer to data
|
||||||
|
\return value of type uint32_t at (*ptr)
|
||||||
|
*/
|
||||||
|
#if defined(__ARMCC_VERSION) && (__ARMCC_VERSION < 5060020)
|
||||||
|
#define __LDREXW(ptr) ((uint32_t ) __ldrex(ptr))
|
||||||
|
#else
|
||||||
|
#define __LDREXW(ptr) _Pragma("push") _Pragma("diag_suppress 3731") ((uint32_t ) __ldrex(ptr)) _Pragma("pop")
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief STR Exclusive (8 bit)
|
||||||
|
\details Executes a exclusive STR instruction for 8 bit values.
|
||||||
|
\param [in] value Value to store
|
||||||
|
\param [in] ptr Pointer to location
|
||||||
|
\return 0 Function succeeded
|
||||||
|
\return 1 Function failed
|
||||||
|
*/
|
||||||
|
#if defined(__ARMCC_VERSION) && (__ARMCC_VERSION < 5060020)
|
||||||
|
#define __STREXB(value, ptr) __strex(value, ptr)
|
||||||
|
#else
|
||||||
|
#define __STREXB(value, ptr) _Pragma("push") _Pragma("diag_suppress 3731") __strex(value, ptr) _Pragma("pop")
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief STR Exclusive (16 bit)
|
||||||
|
\details Executes a exclusive STR instruction for 16 bit values.
|
||||||
|
\param [in] value Value to store
|
||||||
|
\param [in] ptr Pointer to location
|
||||||
|
\return 0 Function succeeded
|
||||||
|
\return 1 Function failed
|
||||||
|
*/
|
||||||
|
#if defined(__ARMCC_VERSION) && (__ARMCC_VERSION < 5060020)
|
||||||
|
#define __STREXH(value, ptr) __strex(value, ptr)
|
||||||
|
#else
|
||||||
|
#define __STREXH(value, ptr) _Pragma("push") _Pragma("diag_suppress 3731") __strex(value, ptr) _Pragma("pop")
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief STR Exclusive (32 bit)
|
||||||
|
\details Executes a exclusive STR instruction for 32 bit values.
|
||||||
|
\param [in] value Value to store
|
||||||
|
\param [in] ptr Pointer to location
|
||||||
|
\return 0 Function succeeded
|
||||||
|
\return 1 Function failed
|
||||||
|
*/
|
||||||
|
#if defined(__ARMCC_VERSION) && (__ARMCC_VERSION < 5060020)
|
||||||
|
#define __STREXW(value, ptr) __strex(value, ptr)
|
||||||
|
#else
|
||||||
|
#define __STREXW(value, ptr) _Pragma("push") _Pragma("diag_suppress 3731") __strex(value, ptr) _Pragma("pop")
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Remove the exclusive lock
|
||||||
|
\details Removes the exclusive lock which is created by LDREX.
|
||||||
|
*/
|
||||||
|
#define __CLREX __clrex
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Signed Saturate
|
||||||
|
\details Saturates a signed value.
|
||||||
|
\param [in] value Value to be saturated
|
||||||
|
\param [in] sat Bit position to saturate to (1..32)
|
||||||
|
\return Saturated value
|
||||||
|
*/
|
||||||
|
#define __SSAT __ssat
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Unsigned Saturate
|
||||||
|
\details Saturates an unsigned value.
|
||||||
|
\param [in] value Value to be saturated
|
||||||
|
\param [in] sat Bit position to saturate to (0..31)
|
||||||
|
\return Saturated value
|
||||||
|
*/
|
||||||
|
#define __USAT __usat
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Rotate Right with Extend (32 bit)
|
||||||
|
\details Moves each bit of a bitstring right by one bit.
|
||||||
|
The carry input is shifted in at the left end of the bitstring.
|
||||||
|
\param [in] value Value to rotate
|
||||||
|
\return Rotated value
|
||||||
|
*/
|
||||||
|
#ifndef __NO_EMBEDDED_ASM
|
||||||
|
__attribute__((section(".rrx_text"))) __STATIC_INLINE __ASM uint32_t __RRX(uint32_t value)
|
||||||
|
{
|
||||||
|
rrx r0, r0
|
||||||
|
bx lr
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief LDRT Unprivileged (8 bit)
|
||||||
|
\details Executes a Unprivileged LDRT instruction for 8 bit value.
|
||||||
|
\param [in] ptr Pointer to data
|
||||||
|
\return value of type uint8_t at (*ptr)
|
||||||
|
*/
|
||||||
|
#define __LDRBT(ptr) ((uint8_t ) __ldrt(ptr))
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief LDRT Unprivileged (16 bit)
|
||||||
|
\details Executes a Unprivileged LDRT instruction for 16 bit values.
|
||||||
|
\param [in] ptr Pointer to data
|
||||||
|
\return value of type uint16_t at (*ptr)
|
||||||
|
*/
|
||||||
|
#define __LDRHT(ptr) ((uint16_t) __ldrt(ptr))
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief LDRT Unprivileged (32 bit)
|
||||||
|
\details Executes a Unprivileged LDRT instruction for 32 bit values.
|
||||||
|
\param [in] ptr Pointer to data
|
||||||
|
\return value of type uint32_t at (*ptr)
|
||||||
|
*/
|
||||||
|
#define __LDRT(ptr) ((uint32_t ) __ldrt(ptr))
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief STRT Unprivileged (8 bit)
|
||||||
|
\details Executes a Unprivileged STRT instruction for 8 bit values.
|
||||||
|
\param [in] value Value to store
|
||||||
|
\param [in] ptr Pointer to location
|
||||||
|
*/
|
||||||
|
#define __STRBT(value, ptr) __strt(value, ptr)
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief STRT Unprivileged (16 bit)
|
||||||
|
\details Executes a Unprivileged STRT instruction for 16 bit values.
|
||||||
|
\param [in] value Value to store
|
||||||
|
\param [in] ptr Pointer to location
|
||||||
|
*/
|
||||||
|
#define __STRHT(value, ptr) __strt(value, ptr)
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief STRT Unprivileged (32 bit)
|
||||||
|
\details Executes a Unprivileged STRT instruction for 32 bit values.
|
||||||
|
\param [in] value Value to store
|
||||||
|
\param [in] ptr Pointer to location
|
||||||
|
*/
|
||||||
|
#define __STRT(value, ptr) __strt(value, ptr)
|
||||||
|
|
||||||
|
#else /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \
|
||||||
|
(defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) ) */
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Signed Saturate
|
||||||
|
\details Saturates a signed value.
|
||||||
|
\param [in] value Value to be saturated
|
||||||
|
\param [in] sat Bit position to saturate to (1..32)
|
||||||
|
\return Saturated value
|
||||||
|
*/
|
||||||
|
__attribute__((always_inline)) __STATIC_INLINE int32_t __SSAT(int32_t val, uint32_t sat)
|
||||||
|
{
|
||||||
|
if ((sat >= 1U) && (sat <= 32U))
|
||||||
|
{
|
||||||
|
const int32_t max = (int32_t)((1U << (sat - 1U)) - 1U);
|
||||||
|
const int32_t min = -1 - max ;
|
||||||
|
if (val > max)
|
||||||
|
{
|
||||||
|
return max;
|
||||||
|
}
|
||||||
|
else if (val < min)
|
||||||
|
{
|
||||||
|
return min;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return val;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Unsigned Saturate
|
||||||
|
\details Saturates an unsigned value.
|
||||||
|
\param [in] value Value to be saturated
|
||||||
|
\param [in] sat Bit position to saturate to (0..31)
|
||||||
|
\return Saturated value
|
||||||
|
*/
|
||||||
|
__attribute__((always_inline)) __STATIC_INLINE uint32_t __USAT(int32_t val, uint32_t sat)
|
||||||
|
{
|
||||||
|
if (sat <= 31U)
|
||||||
|
{
|
||||||
|
const uint32_t max = ((1U << sat) - 1U);
|
||||||
|
if (val > (int32_t)max)
|
||||||
|
{
|
||||||
|
return max;
|
||||||
|
}
|
||||||
|
else if (val < 0)
|
||||||
|
{
|
||||||
|
return 0U;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return (uint32_t)val;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \
|
||||||
|
(defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) ) */
|
||||||
|
|
||||||
|
/*@}*/ /* end of group CMSIS_Core_InstructionInterface */
|
||||||
|
|
||||||
|
|
||||||
|
/* ################### Compiler specific Intrinsics ########################### */
|
||||||
|
/** \defgroup CMSIS_SIMD_intrinsics CMSIS SIMD Intrinsics
|
||||||
|
Access to dedicated SIMD instructions
|
||||||
|
@{
|
||||||
|
*/
|
||||||
|
|
||||||
|
#if ((defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) )
|
||||||
|
|
||||||
|
#define __SADD8 __sadd8
|
||||||
|
#define __QADD8 __qadd8
|
||||||
|
#define __SHADD8 __shadd8
|
||||||
|
#define __UADD8 __uadd8
|
||||||
|
#define __UQADD8 __uqadd8
|
||||||
|
#define __UHADD8 __uhadd8
|
||||||
|
#define __SSUB8 __ssub8
|
||||||
|
#define __QSUB8 __qsub8
|
||||||
|
#define __SHSUB8 __shsub8
|
||||||
|
#define __USUB8 __usub8
|
||||||
|
#define __UQSUB8 __uqsub8
|
||||||
|
#define __UHSUB8 __uhsub8
|
||||||
|
#define __SADD16 __sadd16
|
||||||
|
#define __QADD16 __qadd16
|
||||||
|
#define __SHADD16 __shadd16
|
||||||
|
#define __UADD16 __uadd16
|
||||||
|
#define __UQADD16 __uqadd16
|
||||||
|
#define __UHADD16 __uhadd16
|
||||||
|
#define __SSUB16 __ssub16
|
||||||
|
#define __QSUB16 __qsub16
|
||||||
|
#define __SHSUB16 __shsub16
|
||||||
|
#define __USUB16 __usub16
|
||||||
|
#define __UQSUB16 __uqsub16
|
||||||
|
#define __UHSUB16 __uhsub16
|
||||||
|
#define __SASX __sasx
|
||||||
|
#define __QASX __qasx
|
||||||
|
#define __SHASX __shasx
|
||||||
|
#define __UASX __uasx
|
||||||
|
#define __UQASX __uqasx
|
||||||
|
#define __UHASX __uhasx
|
||||||
|
#define __SSAX __ssax
|
||||||
|
#define __QSAX __qsax
|
||||||
|
#define __SHSAX __shsax
|
||||||
|
#define __USAX __usax
|
||||||
|
#define __UQSAX __uqsax
|
||||||
|
#define __UHSAX __uhsax
|
||||||
|
#define __USAD8 __usad8
|
||||||
|
#define __USADA8 __usada8
|
||||||
|
#define __SSAT16 __ssat16
|
||||||
|
#define __USAT16 __usat16
|
||||||
|
#define __UXTB16 __uxtb16
|
||||||
|
#define __UXTAB16 __uxtab16
|
||||||
|
#define __SXTB16 __sxtb16
|
||||||
|
#define __SXTAB16 __sxtab16
|
||||||
|
#define __SMUAD __smuad
|
||||||
|
#define __SMUADX __smuadx
|
||||||
|
#define __SMLAD __smlad
|
||||||
|
#define __SMLADX __smladx
|
||||||
|
#define __SMLALD __smlald
|
||||||
|
#define __SMLALDX __smlaldx
|
||||||
|
#define __SMUSD __smusd
|
||||||
|
#define __SMUSDX __smusdx
|
||||||
|
#define __SMLSD __smlsd
|
||||||
|
#define __SMLSDX __smlsdx
|
||||||
|
#define __SMLSLD __smlsld
|
||||||
|
#define __SMLSLDX __smlsldx
|
||||||
|
#define __SEL __sel
|
||||||
|
#define __QADD __qadd
|
||||||
|
#define __QSUB __qsub
|
||||||
|
|
||||||
|
#define __PKHBT(ARG1,ARG2,ARG3) ( ((((uint32_t)(ARG1)) ) & 0x0000FFFFUL) | \
|
||||||
|
((((uint32_t)(ARG2)) << (ARG3)) & 0xFFFF0000UL) )
|
||||||
|
|
||||||
|
#define __PKHTB(ARG1,ARG2,ARG3) ( ((((uint32_t)(ARG1)) ) & 0xFFFF0000UL) | \
|
||||||
|
((((uint32_t)(ARG2)) >> (ARG3)) & 0x0000FFFFUL) )
|
||||||
|
|
||||||
|
#define __SMMLA(ARG1,ARG2,ARG3) ( (int32_t)((((int64_t)(ARG1) * (ARG2)) + \
|
||||||
|
((int64_t)(ARG3) << 32U) ) >> 32U))
|
||||||
|
|
||||||
|
#endif /* ((defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) ) */
|
||||||
|
/*@} end of group CMSIS_SIMD_intrinsics */
|
||||||
|
|
||||||
|
|
||||||
|
#endif /* __CMSIS_ARMCC_H */
|
||||||
1444
squeow_sw/Drivers/CMSIS/Include/cmsis_armclang.h
Normal file
1444
squeow_sw/Drivers/CMSIS/Include/cmsis_armclang.h
Normal file
File diff suppressed because it is too large
Load Diff
1891
squeow_sw/Drivers/CMSIS/Include/cmsis_armclang_ltm.h
Normal file
1891
squeow_sw/Drivers/CMSIS/Include/cmsis_armclang_ltm.h
Normal file
File diff suppressed because it is too large
Load Diff
283
squeow_sw/Drivers/CMSIS/Include/cmsis_compiler.h
Normal file
283
squeow_sw/Drivers/CMSIS/Include/cmsis_compiler.h
Normal file
@@ -0,0 +1,283 @@
|
|||||||
|
/**************************************************************************//**
|
||||||
|
* @file cmsis_compiler.h
|
||||||
|
* @brief CMSIS compiler generic header file
|
||||||
|
* @version V5.1.0
|
||||||
|
* @date 09. October 2018
|
||||||
|
******************************************************************************/
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2009-2018 Arm Limited. All rights reserved.
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the License); you may
|
||||||
|
* not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an AS IS BASIS, WITHOUT
|
||||||
|
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __CMSIS_COMPILER_H
|
||||||
|
#define __CMSIS_COMPILER_H
|
||||||
|
|
||||||
|
#include <stdint.h>
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Arm Compiler 4/5
|
||||||
|
*/
|
||||||
|
#if defined ( __CC_ARM )
|
||||||
|
#include "cmsis_armcc.h"
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Arm Compiler 6.6 LTM (armclang)
|
||||||
|
*/
|
||||||
|
#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) && (__ARMCC_VERSION < 6100100)
|
||||||
|
#include "cmsis_armclang_ltm.h"
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Arm Compiler above 6.10.1 (armclang)
|
||||||
|
*/
|
||||||
|
#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6100100)
|
||||||
|
#include "cmsis_armclang.h"
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* GNU Compiler
|
||||||
|
*/
|
||||||
|
#elif defined ( __GNUC__ )
|
||||||
|
#include "cmsis_gcc.h"
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* IAR Compiler
|
||||||
|
*/
|
||||||
|
#elif defined ( __ICCARM__ )
|
||||||
|
#include <cmsis_iccarm.h>
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* TI Arm Compiler
|
||||||
|
*/
|
||||||
|
#elif defined ( __TI_ARM__ )
|
||||||
|
#include <cmsis_ccs.h>
|
||||||
|
|
||||||
|
#ifndef __ASM
|
||||||
|
#define __ASM __asm
|
||||||
|
#endif
|
||||||
|
#ifndef __INLINE
|
||||||
|
#define __INLINE inline
|
||||||
|
#endif
|
||||||
|
#ifndef __STATIC_INLINE
|
||||||
|
#define __STATIC_INLINE static inline
|
||||||
|
#endif
|
||||||
|
#ifndef __STATIC_FORCEINLINE
|
||||||
|
#define __STATIC_FORCEINLINE __STATIC_INLINE
|
||||||
|
#endif
|
||||||
|
#ifndef __NO_RETURN
|
||||||
|
#define __NO_RETURN __attribute__((noreturn))
|
||||||
|
#endif
|
||||||
|
#ifndef __USED
|
||||||
|
#define __USED __attribute__((used))
|
||||||
|
#endif
|
||||||
|
#ifndef __WEAK
|
||||||
|
#define __WEAK __attribute__((weak))
|
||||||
|
#endif
|
||||||
|
#ifndef __PACKED
|
||||||
|
#define __PACKED __attribute__((packed))
|
||||||
|
#endif
|
||||||
|
#ifndef __PACKED_STRUCT
|
||||||
|
#define __PACKED_STRUCT struct __attribute__((packed))
|
||||||
|
#endif
|
||||||
|
#ifndef __PACKED_UNION
|
||||||
|
#define __PACKED_UNION union __attribute__((packed))
|
||||||
|
#endif
|
||||||
|
#ifndef __UNALIGNED_UINT32 /* deprecated */
|
||||||
|
struct __attribute__((packed)) T_UINT32 { uint32_t v; };
|
||||||
|
#define __UNALIGNED_UINT32(x) (((struct T_UINT32 *)(x))->v)
|
||||||
|
#endif
|
||||||
|
#ifndef __UNALIGNED_UINT16_WRITE
|
||||||
|
__PACKED_STRUCT T_UINT16_WRITE { uint16_t v; };
|
||||||
|
#define __UNALIGNED_UINT16_WRITE(addr, val) (void)((((struct T_UINT16_WRITE *)(void*)(addr))->v) = (val))
|
||||||
|
#endif
|
||||||
|
#ifndef __UNALIGNED_UINT16_READ
|
||||||
|
__PACKED_STRUCT T_UINT16_READ { uint16_t v; };
|
||||||
|
#define __UNALIGNED_UINT16_READ(addr) (((const struct T_UINT16_READ *)(const void *)(addr))->v)
|
||||||
|
#endif
|
||||||
|
#ifndef __UNALIGNED_UINT32_WRITE
|
||||||
|
__PACKED_STRUCT T_UINT32_WRITE { uint32_t v; };
|
||||||
|
#define __UNALIGNED_UINT32_WRITE(addr, val) (void)((((struct T_UINT32_WRITE *)(void *)(addr))->v) = (val))
|
||||||
|
#endif
|
||||||
|
#ifndef __UNALIGNED_UINT32_READ
|
||||||
|
__PACKED_STRUCT T_UINT32_READ { uint32_t v; };
|
||||||
|
#define __UNALIGNED_UINT32_READ(addr) (((const struct T_UINT32_READ *)(const void *)(addr))->v)
|
||||||
|
#endif
|
||||||
|
#ifndef __ALIGNED
|
||||||
|
#define __ALIGNED(x) __attribute__((aligned(x)))
|
||||||
|
#endif
|
||||||
|
#ifndef __RESTRICT
|
||||||
|
#define __RESTRICT __restrict
|
||||||
|
#endif
|
||||||
|
#ifndef __COMPILER_BARRIER
|
||||||
|
#warning No compiler specific solution for __COMPILER_BARRIER. __COMPILER_BARRIER is ignored.
|
||||||
|
#define __COMPILER_BARRIER() (void)0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* TASKING Compiler
|
||||||
|
*/
|
||||||
|
#elif defined ( __TASKING__ )
|
||||||
|
/*
|
||||||
|
* The CMSIS functions have been implemented as intrinsics in the compiler.
|
||||||
|
* Please use "carm -?i" to get an up to date list of all intrinsics,
|
||||||
|
* Including the CMSIS ones.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __ASM
|
||||||
|
#define __ASM __asm
|
||||||
|
#endif
|
||||||
|
#ifndef __INLINE
|
||||||
|
#define __INLINE inline
|
||||||
|
#endif
|
||||||
|
#ifndef __STATIC_INLINE
|
||||||
|
#define __STATIC_INLINE static inline
|
||||||
|
#endif
|
||||||
|
#ifndef __STATIC_FORCEINLINE
|
||||||
|
#define __STATIC_FORCEINLINE __STATIC_INLINE
|
||||||
|
#endif
|
||||||
|
#ifndef __NO_RETURN
|
||||||
|
#define __NO_RETURN __attribute__((noreturn))
|
||||||
|
#endif
|
||||||
|
#ifndef __USED
|
||||||
|
#define __USED __attribute__((used))
|
||||||
|
#endif
|
||||||
|
#ifndef __WEAK
|
||||||
|
#define __WEAK __attribute__((weak))
|
||||||
|
#endif
|
||||||
|
#ifndef __PACKED
|
||||||
|
#define __PACKED __packed__
|
||||||
|
#endif
|
||||||
|
#ifndef __PACKED_STRUCT
|
||||||
|
#define __PACKED_STRUCT struct __packed__
|
||||||
|
#endif
|
||||||
|
#ifndef __PACKED_UNION
|
||||||
|
#define __PACKED_UNION union __packed__
|
||||||
|
#endif
|
||||||
|
#ifndef __UNALIGNED_UINT32 /* deprecated */
|
||||||
|
struct __packed__ T_UINT32 { uint32_t v; };
|
||||||
|
#define __UNALIGNED_UINT32(x) (((struct T_UINT32 *)(x))->v)
|
||||||
|
#endif
|
||||||
|
#ifndef __UNALIGNED_UINT16_WRITE
|
||||||
|
__PACKED_STRUCT T_UINT16_WRITE { uint16_t v; };
|
||||||
|
#define __UNALIGNED_UINT16_WRITE(addr, val) (void)((((struct T_UINT16_WRITE *)(void *)(addr))->v) = (val))
|
||||||
|
#endif
|
||||||
|
#ifndef __UNALIGNED_UINT16_READ
|
||||||
|
__PACKED_STRUCT T_UINT16_READ { uint16_t v; };
|
||||||
|
#define __UNALIGNED_UINT16_READ(addr) (((const struct T_UINT16_READ *)(const void *)(addr))->v)
|
||||||
|
#endif
|
||||||
|
#ifndef __UNALIGNED_UINT32_WRITE
|
||||||
|
__PACKED_STRUCT T_UINT32_WRITE { uint32_t v; };
|
||||||
|
#define __UNALIGNED_UINT32_WRITE(addr, val) (void)((((struct T_UINT32_WRITE *)(void *)(addr))->v) = (val))
|
||||||
|
#endif
|
||||||
|
#ifndef __UNALIGNED_UINT32_READ
|
||||||
|
__PACKED_STRUCT T_UINT32_READ { uint32_t v; };
|
||||||
|
#define __UNALIGNED_UINT32_READ(addr) (((const struct T_UINT32_READ *)(const void *)(addr))->v)
|
||||||
|
#endif
|
||||||
|
#ifndef __ALIGNED
|
||||||
|
#define __ALIGNED(x) __align(x)
|
||||||
|
#endif
|
||||||
|
#ifndef __RESTRICT
|
||||||
|
#warning No compiler specific solution for __RESTRICT. __RESTRICT is ignored.
|
||||||
|
#define __RESTRICT
|
||||||
|
#endif
|
||||||
|
#ifndef __COMPILER_BARRIER
|
||||||
|
#warning No compiler specific solution for __COMPILER_BARRIER. __COMPILER_BARRIER is ignored.
|
||||||
|
#define __COMPILER_BARRIER() (void)0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* COSMIC Compiler
|
||||||
|
*/
|
||||||
|
#elif defined ( __CSMC__ )
|
||||||
|
#include <cmsis_csm.h>
|
||||||
|
|
||||||
|
#ifndef __ASM
|
||||||
|
#define __ASM _asm
|
||||||
|
#endif
|
||||||
|
#ifndef __INLINE
|
||||||
|
#define __INLINE inline
|
||||||
|
#endif
|
||||||
|
#ifndef __STATIC_INLINE
|
||||||
|
#define __STATIC_INLINE static inline
|
||||||
|
#endif
|
||||||
|
#ifndef __STATIC_FORCEINLINE
|
||||||
|
#define __STATIC_FORCEINLINE __STATIC_INLINE
|
||||||
|
#endif
|
||||||
|
#ifndef __NO_RETURN
|
||||||
|
// NO RETURN is automatically detected hence no warning here
|
||||||
|
#define __NO_RETURN
|
||||||
|
#endif
|
||||||
|
#ifndef __USED
|
||||||
|
#warning No compiler specific solution for __USED. __USED is ignored.
|
||||||
|
#define __USED
|
||||||
|
#endif
|
||||||
|
#ifndef __WEAK
|
||||||
|
#define __WEAK __weak
|
||||||
|
#endif
|
||||||
|
#ifndef __PACKED
|
||||||
|
#define __PACKED @packed
|
||||||
|
#endif
|
||||||
|
#ifndef __PACKED_STRUCT
|
||||||
|
#define __PACKED_STRUCT @packed struct
|
||||||
|
#endif
|
||||||
|
#ifndef __PACKED_UNION
|
||||||
|
#define __PACKED_UNION @packed union
|
||||||
|
#endif
|
||||||
|
#ifndef __UNALIGNED_UINT32 /* deprecated */
|
||||||
|
@packed struct T_UINT32 { uint32_t v; };
|
||||||
|
#define __UNALIGNED_UINT32(x) (((struct T_UINT32 *)(x))->v)
|
||||||
|
#endif
|
||||||
|
#ifndef __UNALIGNED_UINT16_WRITE
|
||||||
|
__PACKED_STRUCT T_UINT16_WRITE { uint16_t v; };
|
||||||
|
#define __UNALIGNED_UINT16_WRITE(addr, val) (void)((((struct T_UINT16_WRITE *)(void *)(addr))->v) = (val))
|
||||||
|
#endif
|
||||||
|
#ifndef __UNALIGNED_UINT16_READ
|
||||||
|
__PACKED_STRUCT T_UINT16_READ { uint16_t v; };
|
||||||
|
#define __UNALIGNED_UINT16_READ(addr) (((const struct T_UINT16_READ *)(const void *)(addr))->v)
|
||||||
|
#endif
|
||||||
|
#ifndef __UNALIGNED_UINT32_WRITE
|
||||||
|
__PACKED_STRUCT T_UINT32_WRITE { uint32_t v; };
|
||||||
|
#define __UNALIGNED_UINT32_WRITE(addr, val) (void)((((struct T_UINT32_WRITE *)(void *)(addr))->v) = (val))
|
||||||
|
#endif
|
||||||
|
#ifndef __UNALIGNED_UINT32_READ
|
||||||
|
__PACKED_STRUCT T_UINT32_READ { uint32_t v; };
|
||||||
|
#define __UNALIGNED_UINT32_READ(addr) (((const struct T_UINT32_READ *)(const void *)(addr))->v)
|
||||||
|
#endif
|
||||||
|
#ifndef __ALIGNED
|
||||||
|
#warning No compiler specific solution for __ALIGNED. __ALIGNED is ignored.
|
||||||
|
#define __ALIGNED(x)
|
||||||
|
#endif
|
||||||
|
#ifndef __RESTRICT
|
||||||
|
#warning No compiler specific solution for __RESTRICT. __RESTRICT is ignored.
|
||||||
|
#define __RESTRICT
|
||||||
|
#endif
|
||||||
|
#ifndef __COMPILER_BARRIER
|
||||||
|
#warning No compiler specific solution for __COMPILER_BARRIER. __COMPILER_BARRIER is ignored.
|
||||||
|
#define __COMPILER_BARRIER() (void)0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#else
|
||||||
|
#error Unknown compiler.
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#endif /* __CMSIS_COMPILER_H */
|
||||||
|
|
||||||
2168
squeow_sw/Drivers/CMSIS/Include/cmsis_gcc.h
Normal file
2168
squeow_sw/Drivers/CMSIS/Include/cmsis_gcc.h
Normal file
File diff suppressed because it is too large
Load Diff
964
squeow_sw/Drivers/CMSIS/Include/cmsis_iccarm.h
Normal file
964
squeow_sw/Drivers/CMSIS/Include/cmsis_iccarm.h
Normal file
@@ -0,0 +1,964 @@
|
|||||||
|
/**************************************************************************//**
|
||||||
|
* @file cmsis_iccarm.h
|
||||||
|
* @brief CMSIS compiler ICCARM (IAR Compiler for Arm) header file
|
||||||
|
* @version V5.1.0
|
||||||
|
* @date 08. May 2019
|
||||||
|
******************************************************************************/
|
||||||
|
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
//
|
||||||
|
// Copyright (c) 2017-2019 IAR Systems
|
||||||
|
// Copyright (c) 2017-2019 Arm Limited. All rights reserved.
|
||||||
|
//
|
||||||
|
// Licensed under the Apache License, Version 2.0 (the "License")
|
||||||
|
// you may not use this file except in compliance with the License.
|
||||||
|
// You may obtain a copy of the License at
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
//
|
||||||
|
// Unless required by applicable law or agreed to in writing, software
|
||||||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
// See the License for the specific language governing permissions and
|
||||||
|
// limitations under the License.
|
||||||
|
//
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef __CMSIS_ICCARM_H__
|
||||||
|
#define __CMSIS_ICCARM_H__
|
||||||
|
|
||||||
|
#ifndef __ICCARM__
|
||||||
|
#error This file should only be compiled by ICCARM
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#pragma system_include
|
||||||
|
|
||||||
|
#define __IAR_FT _Pragma("inline=forced") __intrinsic
|
||||||
|
|
||||||
|
#if (__VER__ >= 8000000)
|
||||||
|
#define __ICCARM_V8 1
|
||||||
|
#else
|
||||||
|
#define __ICCARM_V8 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __ALIGNED
|
||||||
|
#if __ICCARM_V8
|
||||||
|
#define __ALIGNED(x) __attribute__((aligned(x)))
|
||||||
|
#elif (__VER__ >= 7080000)
|
||||||
|
/* Needs IAR language extensions */
|
||||||
|
#define __ALIGNED(x) __attribute__((aligned(x)))
|
||||||
|
#else
|
||||||
|
#warning No compiler specific solution for __ALIGNED.__ALIGNED is ignored.
|
||||||
|
#define __ALIGNED(x)
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* Define compiler macros for CPU architecture, used in CMSIS 5.
|
||||||
|
*/
|
||||||
|
#if __ARM_ARCH_6M__ || __ARM_ARCH_7M__ || __ARM_ARCH_7EM__ || __ARM_ARCH_8M_BASE__ || __ARM_ARCH_8M_MAIN__
|
||||||
|
/* Macros already defined */
|
||||||
|
#else
|
||||||
|
#if defined(__ARM8M_MAINLINE__) || defined(__ARM8EM_MAINLINE__)
|
||||||
|
#define __ARM_ARCH_8M_MAIN__ 1
|
||||||
|
#elif defined(__ARM8M_BASELINE__)
|
||||||
|
#define __ARM_ARCH_8M_BASE__ 1
|
||||||
|
#elif defined(__ARM_ARCH_PROFILE) && __ARM_ARCH_PROFILE == 'M'
|
||||||
|
#if __ARM_ARCH == 6
|
||||||
|
#define __ARM_ARCH_6M__ 1
|
||||||
|
#elif __ARM_ARCH == 7
|
||||||
|
#if __ARM_FEATURE_DSP
|
||||||
|
#define __ARM_ARCH_7EM__ 1
|
||||||
|
#else
|
||||||
|
#define __ARM_ARCH_7M__ 1
|
||||||
|
#endif
|
||||||
|
#endif /* __ARM_ARCH */
|
||||||
|
#endif /* __ARM_ARCH_PROFILE == 'M' */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Alternativ core deduction for older ICCARM's */
|
||||||
|
#if !defined(__ARM_ARCH_6M__) && !defined(__ARM_ARCH_7M__) && !defined(__ARM_ARCH_7EM__) && \
|
||||||
|
!defined(__ARM_ARCH_8M_BASE__) && !defined(__ARM_ARCH_8M_MAIN__)
|
||||||
|
#if defined(__ARM6M__) && (__CORE__ == __ARM6M__)
|
||||||
|
#define __ARM_ARCH_6M__ 1
|
||||||
|
#elif defined(__ARM7M__) && (__CORE__ == __ARM7M__)
|
||||||
|
#define __ARM_ARCH_7M__ 1
|
||||||
|
#elif defined(__ARM7EM__) && (__CORE__ == __ARM7EM__)
|
||||||
|
#define __ARM_ARCH_7EM__ 1
|
||||||
|
#elif defined(__ARM8M_BASELINE__) && (__CORE == __ARM8M_BASELINE__)
|
||||||
|
#define __ARM_ARCH_8M_BASE__ 1
|
||||||
|
#elif defined(__ARM8M_MAINLINE__) && (__CORE == __ARM8M_MAINLINE__)
|
||||||
|
#define __ARM_ARCH_8M_MAIN__ 1
|
||||||
|
#elif defined(__ARM8EM_MAINLINE__) && (__CORE == __ARM8EM_MAINLINE__)
|
||||||
|
#define __ARM_ARCH_8M_MAIN__ 1
|
||||||
|
#else
|
||||||
|
#error "Unknown target."
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#if defined(__ARM_ARCH_6M__) && __ARM_ARCH_6M__==1
|
||||||
|
#define __IAR_M0_FAMILY 1
|
||||||
|
#elif defined(__ARM_ARCH_8M_BASE__) && __ARM_ARCH_8M_BASE__==1
|
||||||
|
#define __IAR_M0_FAMILY 1
|
||||||
|
#else
|
||||||
|
#define __IAR_M0_FAMILY 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef __ASM
|
||||||
|
#define __ASM __asm
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __COMPILER_BARRIER
|
||||||
|
#define __COMPILER_BARRIER() __ASM volatile("":::"memory")
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __INLINE
|
||||||
|
#define __INLINE inline
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __NO_RETURN
|
||||||
|
#if __ICCARM_V8
|
||||||
|
#define __NO_RETURN __attribute__((__noreturn__))
|
||||||
|
#else
|
||||||
|
#define __NO_RETURN _Pragma("object_attribute=__noreturn")
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __PACKED
|
||||||
|
#if __ICCARM_V8
|
||||||
|
#define __PACKED __attribute__((packed, aligned(1)))
|
||||||
|
#else
|
||||||
|
/* Needs IAR language extensions */
|
||||||
|
#define __PACKED __packed
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __PACKED_STRUCT
|
||||||
|
#if __ICCARM_V8
|
||||||
|
#define __PACKED_STRUCT struct __attribute__((packed, aligned(1)))
|
||||||
|
#else
|
||||||
|
/* Needs IAR language extensions */
|
||||||
|
#define __PACKED_STRUCT __packed struct
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __PACKED_UNION
|
||||||
|
#if __ICCARM_V8
|
||||||
|
#define __PACKED_UNION union __attribute__((packed, aligned(1)))
|
||||||
|
#else
|
||||||
|
/* Needs IAR language extensions */
|
||||||
|
#define __PACKED_UNION __packed union
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __RESTRICT
|
||||||
|
#if __ICCARM_V8
|
||||||
|
#define __RESTRICT __restrict
|
||||||
|
#else
|
||||||
|
/* Needs IAR language extensions */
|
||||||
|
#define __RESTRICT restrict
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __STATIC_INLINE
|
||||||
|
#define __STATIC_INLINE static inline
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __FORCEINLINE
|
||||||
|
#define __FORCEINLINE _Pragma("inline=forced")
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __STATIC_FORCEINLINE
|
||||||
|
#define __STATIC_FORCEINLINE __FORCEINLINE __STATIC_INLINE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __UNALIGNED_UINT16_READ
|
||||||
|
#pragma language=save
|
||||||
|
#pragma language=extended
|
||||||
|
__IAR_FT uint16_t __iar_uint16_read(void const *ptr)
|
||||||
|
{
|
||||||
|
return *(__packed uint16_t*)(ptr);
|
||||||
|
}
|
||||||
|
#pragma language=restore
|
||||||
|
#define __UNALIGNED_UINT16_READ(PTR) __iar_uint16_read(PTR)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef __UNALIGNED_UINT16_WRITE
|
||||||
|
#pragma language=save
|
||||||
|
#pragma language=extended
|
||||||
|
__IAR_FT void __iar_uint16_write(void const *ptr, uint16_t val)
|
||||||
|
{
|
||||||
|
*(__packed uint16_t*)(ptr) = val;;
|
||||||
|
}
|
||||||
|
#pragma language=restore
|
||||||
|
#define __UNALIGNED_UINT16_WRITE(PTR,VAL) __iar_uint16_write(PTR,VAL)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __UNALIGNED_UINT32_READ
|
||||||
|
#pragma language=save
|
||||||
|
#pragma language=extended
|
||||||
|
__IAR_FT uint32_t __iar_uint32_read(void const *ptr)
|
||||||
|
{
|
||||||
|
return *(__packed uint32_t*)(ptr);
|
||||||
|
}
|
||||||
|
#pragma language=restore
|
||||||
|
#define __UNALIGNED_UINT32_READ(PTR) __iar_uint32_read(PTR)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __UNALIGNED_UINT32_WRITE
|
||||||
|
#pragma language=save
|
||||||
|
#pragma language=extended
|
||||||
|
__IAR_FT void __iar_uint32_write(void const *ptr, uint32_t val)
|
||||||
|
{
|
||||||
|
*(__packed uint32_t*)(ptr) = val;;
|
||||||
|
}
|
||||||
|
#pragma language=restore
|
||||||
|
#define __UNALIGNED_UINT32_WRITE(PTR,VAL) __iar_uint32_write(PTR,VAL)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __UNALIGNED_UINT32 /* deprecated */
|
||||||
|
#pragma language=save
|
||||||
|
#pragma language=extended
|
||||||
|
__packed struct __iar_u32 { uint32_t v; };
|
||||||
|
#pragma language=restore
|
||||||
|
#define __UNALIGNED_UINT32(PTR) (((struct __iar_u32 *)(PTR))->v)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __USED
|
||||||
|
#if __ICCARM_V8
|
||||||
|
#define __USED __attribute__((used))
|
||||||
|
#else
|
||||||
|
#define __USED _Pragma("__root")
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __WEAK
|
||||||
|
#if __ICCARM_V8
|
||||||
|
#define __WEAK __attribute__((weak))
|
||||||
|
#else
|
||||||
|
#define __WEAK _Pragma("__weak")
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __PROGRAM_START
|
||||||
|
#define __PROGRAM_START __iar_program_start
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __INITIAL_SP
|
||||||
|
#define __INITIAL_SP CSTACK$$Limit
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __STACK_LIMIT
|
||||||
|
#define __STACK_LIMIT CSTACK$$Base
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __VECTOR_TABLE
|
||||||
|
#define __VECTOR_TABLE __vector_table
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __VECTOR_TABLE_ATTRIBUTE
|
||||||
|
#define __VECTOR_TABLE_ATTRIBUTE @".intvec"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __ICCARM_INTRINSICS_VERSION__
|
||||||
|
#define __ICCARM_INTRINSICS_VERSION__ 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if __ICCARM_INTRINSICS_VERSION__ == 2
|
||||||
|
|
||||||
|
#if defined(__CLZ)
|
||||||
|
#undef __CLZ
|
||||||
|
#endif
|
||||||
|
#if defined(__REVSH)
|
||||||
|
#undef __REVSH
|
||||||
|
#endif
|
||||||
|
#if defined(__RBIT)
|
||||||
|
#undef __RBIT
|
||||||
|
#endif
|
||||||
|
#if defined(__SSAT)
|
||||||
|
#undef __SSAT
|
||||||
|
#endif
|
||||||
|
#if defined(__USAT)
|
||||||
|
#undef __USAT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include "iccarm_builtin.h"
|
||||||
|
|
||||||
|
#define __disable_fault_irq __iar_builtin_disable_fiq
|
||||||
|
#define __disable_irq __iar_builtin_disable_interrupt
|
||||||
|
#define __enable_fault_irq __iar_builtin_enable_fiq
|
||||||
|
#define __enable_irq __iar_builtin_enable_interrupt
|
||||||
|
#define __arm_rsr __iar_builtin_rsr
|
||||||
|
#define __arm_wsr __iar_builtin_wsr
|
||||||
|
|
||||||
|
|
||||||
|
#define __get_APSR() (__arm_rsr("APSR"))
|
||||||
|
#define __get_BASEPRI() (__arm_rsr("BASEPRI"))
|
||||||
|
#define __get_CONTROL() (__arm_rsr("CONTROL"))
|
||||||
|
#define __get_FAULTMASK() (__arm_rsr("FAULTMASK"))
|
||||||
|
|
||||||
|
#if ((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \
|
||||||
|
(defined (__FPU_USED ) && (__FPU_USED == 1U)) )
|
||||||
|
#define __get_FPSCR() (__arm_rsr("FPSCR"))
|
||||||
|
#define __set_FPSCR(VALUE) (__arm_wsr("FPSCR", (VALUE)))
|
||||||
|
#else
|
||||||
|
#define __get_FPSCR() ( 0 )
|
||||||
|
#define __set_FPSCR(VALUE) ((void)VALUE)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define __get_IPSR() (__arm_rsr("IPSR"))
|
||||||
|
#define __get_MSP() (__arm_rsr("MSP"))
|
||||||
|
#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \
|
||||||
|
(!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3)))
|
||||||
|
// without main extensions, the non-secure MSPLIM is RAZ/WI
|
||||||
|
#define __get_MSPLIM() (0U)
|
||||||
|
#else
|
||||||
|
#define __get_MSPLIM() (__arm_rsr("MSPLIM"))
|
||||||
|
#endif
|
||||||
|
#define __get_PRIMASK() (__arm_rsr("PRIMASK"))
|
||||||
|
#define __get_PSP() (__arm_rsr("PSP"))
|
||||||
|
|
||||||
|
#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \
|
||||||
|
(!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3)))
|
||||||
|
// without main extensions, the non-secure PSPLIM is RAZ/WI
|
||||||
|
#define __get_PSPLIM() (0U)
|
||||||
|
#else
|
||||||
|
#define __get_PSPLIM() (__arm_rsr("PSPLIM"))
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define __get_xPSR() (__arm_rsr("xPSR"))
|
||||||
|
|
||||||
|
#define __set_BASEPRI(VALUE) (__arm_wsr("BASEPRI", (VALUE)))
|
||||||
|
#define __set_BASEPRI_MAX(VALUE) (__arm_wsr("BASEPRI_MAX", (VALUE)))
|
||||||
|
#define __set_CONTROL(VALUE) (__arm_wsr("CONTROL", (VALUE)))
|
||||||
|
#define __set_FAULTMASK(VALUE) (__arm_wsr("FAULTMASK", (VALUE)))
|
||||||
|
#define __set_MSP(VALUE) (__arm_wsr("MSP", (VALUE)))
|
||||||
|
|
||||||
|
#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \
|
||||||
|
(!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3)))
|
||||||
|
// without main extensions, the non-secure MSPLIM is RAZ/WI
|
||||||
|
#define __set_MSPLIM(VALUE) ((void)(VALUE))
|
||||||
|
#else
|
||||||
|
#define __set_MSPLIM(VALUE) (__arm_wsr("MSPLIM", (VALUE)))
|
||||||
|
#endif
|
||||||
|
#define __set_PRIMASK(VALUE) (__arm_wsr("PRIMASK", (VALUE)))
|
||||||
|
#define __set_PSP(VALUE) (__arm_wsr("PSP", (VALUE)))
|
||||||
|
#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \
|
||||||
|
(!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3)))
|
||||||
|
// without main extensions, the non-secure PSPLIM is RAZ/WI
|
||||||
|
#define __set_PSPLIM(VALUE) ((void)(VALUE))
|
||||||
|
#else
|
||||||
|
#define __set_PSPLIM(VALUE) (__arm_wsr("PSPLIM", (VALUE)))
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define __TZ_get_CONTROL_NS() (__arm_rsr("CONTROL_NS"))
|
||||||
|
#define __TZ_set_CONTROL_NS(VALUE) (__arm_wsr("CONTROL_NS", (VALUE)))
|
||||||
|
#define __TZ_get_PSP_NS() (__arm_rsr("PSP_NS"))
|
||||||
|
#define __TZ_set_PSP_NS(VALUE) (__arm_wsr("PSP_NS", (VALUE)))
|
||||||
|
#define __TZ_get_MSP_NS() (__arm_rsr("MSP_NS"))
|
||||||
|
#define __TZ_set_MSP_NS(VALUE) (__arm_wsr("MSP_NS", (VALUE)))
|
||||||
|
#define __TZ_get_SP_NS() (__arm_rsr("SP_NS"))
|
||||||
|
#define __TZ_set_SP_NS(VALUE) (__arm_wsr("SP_NS", (VALUE)))
|
||||||
|
#define __TZ_get_PRIMASK_NS() (__arm_rsr("PRIMASK_NS"))
|
||||||
|
#define __TZ_set_PRIMASK_NS(VALUE) (__arm_wsr("PRIMASK_NS", (VALUE)))
|
||||||
|
#define __TZ_get_BASEPRI_NS() (__arm_rsr("BASEPRI_NS"))
|
||||||
|
#define __TZ_set_BASEPRI_NS(VALUE) (__arm_wsr("BASEPRI_NS", (VALUE)))
|
||||||
|
#define __TZ_get_FAULTMASK_NS() (__arm_rsr("FAULTMASK_NS"))
|
||||||
|
#define __TZ_set_FAULTMASK_NS(VALUE)(__arm_wsr("FAULTMASK_NS", (VALUE)))
|
||||||
|
|
||||||
|
#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \
|
||||||
|
(!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3)))
|
||||||
|
// without main extensions, the non-secure PSPLIM is RAZ/WI
|
||||||
|
#define __TZ_get_PSPLIM_NS() (0U)
|
||||||
|
#define __TZ_set_PSPLIM_NS(VALUE) ((void)(VALUE))
|
||||||
|
#else
|
||||||
|
#define __TZ_get_PSPLIM_NS() (__arm_rsr("PSPLIM_NS"))
|
||||||
|
#define __TZ_set_PSPLIM_NS(VALUE) (__arm_wsr("PSPLIM_NS", (VALUE)))
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define __TZ_get_MSPLIM_NS() (__arm_rsr("MSPLIM_NS"))
|
||||||
|
#define __TZ_set_MSPLIM_NS(VALUE) (__arm_wsr("MSPLIM_NS", (VALUE)))
|
||||||
|
|
||||||
|
#define __NOP __iar_builtin_no_operation
|
||||||
|
|
||||||
|
#define __CLZ __iar_builtin_CLZ
|
||||||
|
#define __CLREX __iar_builtin_CLREX
|
||||||
|
|
||||||
|
#define __DMB __iar_builtin_DMB
|
||||||
|
#define __DSB __iar_builtin_DSB
|
||||||
|
#define __ISB __iar_builtin_ISB
|
||||||
|
|
||||||
|
#define __LDREXB __iar_builtin_LDREXB
|
||||||
|
#define __LDREXH __iar_builtin_LDREXH
|
||||||
|
#define __LDREXW __iar_builtin_LDREX
|
||||||
|
|
||||||
|
#define __RBIT __iar_builtin_RBIT
|
||||||
|
#define __REV __iar_builtin_REV
|
||||||
|
#define __REV16 __iar_builtin_REV16
|
||||||
|
|
||||||
|
__IAR_FT int16_t __REVSH(int16_t val)
|
||||||
|
{
|
||||||
|
return (int16_t) __iar_builtin_REVSH(val);
|
||||||
|
}
|
||||||
|
|
||||||
|
#define __ROR __iar_builtin_ROR
|
||||||
|
#define __RRX __iar_builtin_RRX
|
||||||
|
|
||||||
|
#define __SEV __iar_builtin_SEV
|
||||||
|
|
||||||
|
#if !__IAR_M0_FAMILY
|
||||||
|
#define __SSAT __iar_builtin_SSAT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define __STREXB __iar_builtin_STREXB
|
||||||
|
#define __STREXH __iar_builtin_STREXH
|
||||||
|
#define __STREXW __iar_builtin_STREX
|
||||||
|
|
||||||
|
#if !__IAR_M0_FAMILY
|
||||||
|
#define __USAT __iar_builtin_USAT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define __WFE __iar_builtin_WFE
|
||||||
|
#define __WFI __iar_builtin_WFI
|
||||||
|
|
||||||
|
#if __ARM_MEDIA__
|
||||||
|
#define __SADD8 __iar_builtin_SADD8
|
||||||
|
#define __QADD8 __iar_builtin_QADD8
|
||||||
|
#define __SHADD8 __iar_builtin_SHADD8
|
||||||
|
#define __UADD8 __iar_builtin_UADD8
|
||||||
|
#define __UQADD8 __iar_builtin_UQADD8
|
||||||
|
#define __UHADD8 __iar_builtin_UHADD8
|
||||||
|
#define __SSUB8 __iar_builtin_SSUB8
|
||||||
|
#define __QSUB8 __iar_builtin_QSUB8
|
||||||
|
#define __SHSUB8 __iar_builtin_SHSUB8
|
||||||
|
#define __USUB8 __iar_builtin_USUB8
|
||||||
|
#define __UQSUB8 __iar_builtin_UQSUB8
|
||||||
|
#define __UHSUB8 __iar_builtin_UHSUB8
|
||||||
|
#define __SADD16 __iar_builtin_SADD16
|
||||||
|
#define __QADD16 __iar_builtin_QADD16
|
||||||
|
#define __SHADD16 __iar_builtin_SHADD16
|
||||||
|
#define __UADD16 __iar_builtin_UADD16
|
||||||
|
#define __UQADD16 __iar_builtin_UQADD16
|
||||||
|
#define __UHADD16 __iar_builtin_UHADD16
|
||||||
|
#define __SSUB16 __iar_builtin_SSUB16
|
||||||
|
#define __QSUB16 __iar_builtin_QSUB16
|
||||||
|
#define __SHSUB16 __iar_builtin_SHSUB16
|
||||||
|
#define __USUB16 __iar_builtin_USUB16
|
||||||
|
#define __UQSUB16 __iar_builtin_UQSUB16
|
||||||
|
#define __UHSUB16 __iar_builtin_UHSUB16
|
||||||
|
#define __SASX __iar_builtin_SASX
|
||||||
|
#define __QASX __iar_builtin_QASX
|
||||||
|
#define __SHASX __iar_builtin_SHASX
|
||||||
|
#define __UASX __iar_builtin_UASX
|
||||||
|
#define __UQASX __iar_builtin_UQASX
|
||||||
|
#define __UHASX __iar_builtin_UHASX
|
||||||
|
#define __SSAX __iar_builtin_SSAX
|
||||||
|
#define __QSAX __iar_builtin_QSAX
|
||||||
|
#define __SHSAX __iar_builtin_SHSAX
|
||||||
|
#define __USAX __iar_builtin_USAX
|
||||||
|
#define __UQSAX __iar_builtin_UQSAX
|
||||||
|
#define __UHSAX __iar_builtin_UHSAX
|
||||||
|
#define __USAD8 __iar_builtin_USAD8
|
||||||
|
#define __USADA8 __iar_builtin_USADA8
|
||||||
|
#define __SSAT16 __iar_builtin_SSAT16
|
||||||
|
#define __USAT16 __iar_builtin_USAT16
|
||||||
|
#define __UXTB16 __iar_builtin_UXTB16
|
||||||
|
#define __UXTAB16 __iar_builtin_UXTAB16
|
||||||
|
#define __SXTB16 __iar_builtin_SXTB16
|
||||||
|
#define __SXTAB16 __iar_builtin_SXTAB16
|
||||||
|
#define __SMUAD __iar_builtin_SMUAD
|
||||||
|
#define __SMUADX __iar_builtin_SMUADX
|
||||||
|
#define __SMMLA __iar_builtin_SMMLA
|
||||||
|
#define __SMLAD __iar_builtin_SMLAD
|
||||||
|
#define __SMLADX __iar_builtin_SMLADX
|
||||||
|
#define __SMLALD __iar_builtin_SMLALD
|
||||||
|
#define __SMLALDX __iar_builtin_SMLALDX
|
||||||
|
#define __SMUSD __iar_builtin_SMUSD
|
||||||
|
#define __SMUSDX __iar_builtin_SMUSDX
|
||||||
|
#define __SMLSD __iar_builtin_SMLSD
|
||||||
|
#define __SMLSDX __iar_builtin_SMLSDX
|
||||||
|
#define __SMLSLD __iar_builtin_SMLSLD
|
||||||
|
#define __SMLSLDX __iar_builtin_SMLSLDX
|
||||||
|
#define __SEL __iar_builtin_SEL
|
||||||
|
#define __QADD __iar_builtin_QADD
|
||||||
|
#define __QSUB __iar_builtin_QSUB
|
||||||
|
#define __PKHBT __iar_builtin_PKHBT
|
||||||
|
#define __PKHTB __iar_builtin_PKHTB
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#else /* __ICCARM_INTRINSICS_VERSION__ == 2 */
|
||||||
|
|
||||||
|
#if __IAR_M0_FAMILY
|
||||||
|
/* Avoid clash between intrinsics.h and arm_math.h when compiling for Cortex-M0. */
|
||||||
|
#define __CLZ __cmsis_iar_clz_not_active
|
||||||
|
#define __SSAT __cmsis_iar_ssat_not_active
|
||||||
|
#define __USAT __cmsis_iar_usat_not_active
|
||||||
|
#define __RBIT __cmsis_iar_rbit_not_active
|
||||||
|
#define __get_APSR __cmsis_iar_get_APSR_not_active
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#if (!((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \
|
||||||
|
(defined (__FPU_USED ) && (__FPU_USED == 1U)) ))
|
||||||
|
#define __get_FPSCR __cmsis_iar_get_FPSR_not_active
|
||||||
|
#define __set_FPSCR __cmsis_iar_set_FPSR_not_active
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef __INTRINSICS_INCLUDED
|
||||||
|
#error intrinsics.h is already included previously!
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <intrinsics.h>
|
||||||
|
|
||||||
|
#if __IAR_M0_FAMILY
|
||||||
|
/* Avoid clash between intrinsics.h and arm_math.h when compiling for Cortex-M0. */
|
||||||
|
#undef __CLZ
|
||||||
|
#undef __SSAT
|
||||||
|
#undef __USAT
|
||||||
|
#undef __RBIT
|
||||||
|
#undef __get_APSR
|
||||||
|
|
||||||
|
__STATIC_INLINE uint8_t __CLZ(uint32_t data)
|
||||||
|
{
|
||||||
|
if (data == 0U) { return 32U; }
|
||||||
|
|
||||||
|
uint32_t count = 0U;
|
||||||
|
uint32_t mask = 0x80000000U;
|
||||||
|
|
||||||
|
while ((data & mask) == 0U)
|
||||||
|
{
|
||||||
|
count += 1U;
|
||||||
|
mask = mask >> 1U;
|
||||||
|
}
|
||||||
|
return count;
|
||||||
|
}
|
||||||
|
|
||||||
|
__STATIC_INLINE uint32_t __RBIT(uint32_t v)
|
||||||
|
{
|
||||||
|
uint8_t sc = 31U;
|
||||||
|
uint32_t r = v;
|
||||||
|
for (v >>= 1U; v; v >>= 1U)
|
||||||
|
{
|
||||||
|
r <<= 1U;
|
||||||
|
r |= v & 1U;
|
||||||
|
sc--;
|
||||||
|
}
|
||||||
|
return (r << sc);
|
||||||
|
}
|
||||||
|
|
||||||
|
__STATIC_INLINE uint32_t __get_APSR(void)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
__asm("MRS %0,APSR" : "=r" (res));
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if (!((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \
|
||||||
|
(defined (__FPU_USED ) && (__FPU_USED == 1U)) ))
|
||||||
|
#undef __get_FPSCR
|
||||||
|
#undef __set_FPSCR
|
||||||
|
#define __get_FPSCR() (0)
|
||||||
|
#define __set_FPSCR(VALUE) ((void)VALUE)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#pragma diag_suppress=Pe940
|
||||||
|
#pragma diag_suppress=Pe177
|
||||||
|
|
||||||
|
#define __enable_irq __enable_interrupt
|
||||||
|
#define __disable_irq __disable_interrupt
|
||||||
|
#define __NOP __no_operation
|
||||||
|
|
||||||
|
#define __get_xPSR __get_PSR
|
||||||
|
|
||||||
|
#if (!defined(__ARM_ARCH_6M__) || __ARM_ARCH_6M__==0)
|
||||||
|
|
||||||
|
__IAR_FT uint32_t __LDREXW(uint32_t volatile *ptr)
|
||||||
|
{
|
||||||
|
return __LDREX((unsigned long *)ptr);
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT uint32_t __STREXW(uint32_t value, uint32_t volatile *ptr)
|
||||||
|
{
|
||||||
|
return __STREX(value, (unsigned long *)ptr);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* __CORTEX_M is defined in core_cm0.h, core_cm3.h and core_cm4.h. */
|
||||||
|
#if (__CORTEX_M >= 0x03)
|
||||||
|
|
||||||
|
__IAR_FT uint32_t __RRX(uint32_t value)
|
||||||
|
{
|
||||||
|
uint32_t result;
|
||||||
|
__ASM("RRX %0, %1" : "=r"(result) : "r" (value) : "cc");
|
||||||
|
return(result);
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT void __set_BASEPRI_MAX(uint32_t value)
|
||||||
|
{
|
||||||
|
__asm volatile("MSR BASEPRI_MAX,%0"::"r" (value));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#define __enable_fault_irq __enable_fiq
|
||||||
|
#define __disable_fault_irq __disable_fiq
|
||||||
|
|
||||||
|
|
||||||
|
#endif /* (__CORTEX_M >= 0x03) */
|
||||||
|
|
||||||
|
__IAR_FT uint32_t __ROR(uint32_t op1, uint32_t op2)
|
||||||
|
{
|
||||||
|
return (op1 >> op2) | (op1 << ((sizeof(op1)*8)-op2));
|
||||||
|
}
|
||||||
|
|
||||||
|
#if ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \
|
||||||
|
(defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) )
|
||||||
|
|
||||||
|
__IAR_FT uint32_t __get_MSPLIM(void)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \
|
||||||
|
(!defined (__ARM_FEATURE_CMSE ) || (__ARM_FEATURE_CMSE < 3)))
|
||||||
|
// without main extensions, the non-secure MSPLIM is RAZ/WI
|
||||||
|
res = 0U;
|
||||||
|
#else
|
||||||
|
__asm volatile("MRS %0,MSPLIM" : "=r" (res));
|
||||||
|
#endif
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT void __set_MSPLIM(uint32_t value)
|
||||||
|
{
|
||||||
|
#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \
|
||||||
|
(!defined (__ARM_FEATURE_CMSE ) || (__ARM_FEATURE_CMSE < 3)))
|
||||||
|
// without main extensions, the non-secure MSPLIM is RAZ/WI
|
||||||
|
(void)value;
|
||||||
|
#else
|
||||||
|
__asm volatile("MSR MSPLIM,%0" :: "r" (value));
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT uint32_t __get_PSPLIM(void)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \
|
||||||
|
(!defined (__ARM_FEATURE_CMSE ) || (__ARM_FEATURE_CMSE < 3)))
|
||||||
|
// without main extensions, the non-secure PSPLIM is RAZ/WI
|
||||||
|
res = 0U;
|
||||||
|
#else
|
||||||
|
__asm volatile("MRS %0,PSPLIM" : "=r" (res));
|
||||||
|
#endif
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT void __set_PSPLIM(uint32_t value)
|
||||||
|
{
|
||||||
|
#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \
|
||||||
|
(!defined (__ARM_FEATURE_CMSE ) || (__ARM_FEATURE_CMSE < 3)))
|
||||||
|
// without main extensions, the non-secure PSPLIM is RAZ/WI
|
||||||
|
(void)value;
|
||||||
|
#else
|
||||||
|
__asm volatile("MSR PSPLIM,%0" :: "r" (value));
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT uint32_t __TZ_get_CONTROL_NS(void)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
__asm volatile("MRS %0,CONTROL_NS" : "=r" (res));
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT void __TZ_set_CONTROL_NS(uint32_t value)
|
||||||
|
{
|
||||||
|
__asm volatile("MSR CONTROL_NS,%0" :: "r" (value));
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT uint32_t __TZ_get_PSP_NS(void)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
__asm volatile("MRS %0,PSP_NS" : "=r" (res));
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT void __TZ_set_PSP_NS(uint32_t value)
|
||||||
|
{
|
||||||
|
__asm volatile("MSR PSP_NS,%0" :: "r" (value));
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT uint32_t __TZ_get_MSP_NS(void)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
__asm volatile("MRS %0,MSP_NS" : "=r" (res));
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT void __TZ_set_MSP_NS(uint32_t value)
|
||||||
|
{
|
||||||
|
__asm volatile("MSR MSP_NS,%0" :: "r" (value));
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT uint32_t __TZ_get_SP_NS(void)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
__asm volatile("MRS %0,SP_NS" : "=r" (res));
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
__IAR_FT void __TZ_set_SP_NS(uint32_t value)
|
||||||
|
{
|
||||||
|
__asm volatile("MSR SP_NS,%0" :: "r" (value));
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT uint32_t __TZ_get_PRIMASK_NS(void)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
__asm volatile("MRS %0,PRIMASK_NS" : "=r" (res));
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT void __TZ_set_PRIMASK_NS(uint32_t value)
|
||||||
|
{
|
||||||
|
__asm volatile("MSR PRIMASK_NS,%0" :: "r" (value));
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT uint32_t __TZ_get_BASEPRI_NS(void)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
__asm volatile("MRS %0,BASEPRI_NS" : "=r" (res));
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT void __TZ_set_BASEPRI_NS(uint32_t value)
|
||||||
|
{
|
||||||
|
__asm volatile("MSR BASEPRI_NS,%0" :: "r" (value));
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT uint32_t __TZ_get_FAULTMASK_NS(void)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
__asm volatile("MRS %0,FAULTMASK_NS" : "=r" (res));
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT void __TZ_set_FAULTMASK_NS(uint32_t value)
|
||||||
|
{
|
||||||
|
__asm volatile("MSR FAULTMASK_NS,%0" :: "r" (value));
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT uint32_t __TZ_get_PSPLIM_NS(void)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \
|
||||||
|
(!defined (__ARM_FEATURE_CMSE ) || (__ARM_FEATURE_CMSE < 3)))
|
||||||
|
// without main extensions, the non-secure PSPLIM is RAZ/WI
|
||||||
|
res = 0U;
|
||||||
|
#else
|
||||||
|
__asm volatile("MRS %0,PSPLIM_NS" : "=r" (res));
|
||||||
|
#endif
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT void __TZ_set_PSPLIM_NS(uint32_t value)
|
||||||
|
{
|
||||||
|
#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \
|
||||||
|
(!defined (__ARM_FEATURE_CMSE ) || (__ARM_FEATURE_CMSE < 3)))
|
||||||
|
// without main extensions, the non-secure PSPLIM is RAZ/WI
|
||||||
|
(void)value;
|
||||||
|
#else
|
||||||
|
__asm volatile("MSR PSPLIM_NS,%0" :: "r" (value));
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT uint32_t __TZ_get_MSPLIM_NS(void)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
__asm volatile("MRS %0,MSPLIM_NS" : "=r" (res));
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT void __TZ_set_MSPLIM_NS(uint32_t value)
|
||||||
|
{
|
||||||
|
__asm volatile("MSR MSPLIM_NS,%0" :: "r" (value));
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif /* __ARM_ARCH_8M_MAIN__ or __ARM_ARCH_8M_BASE__ */
|
||||||
|
|
||||||
|
#endif /* __ICCARM_INTRINSICS_VERSION__ == 2 */
|
||||||
|
|
||||||
|
#define __BKPT(value) __asm volatile ("BKPT %0" : : "i"(value))
|
||||||
|
|
||||||
|
#if __IAR_M0_FAMILY
|
||||||
|
__STATIC_INLINE int32_t __SSAT(int32_t val, uint32_t sat)
|
||||||
|
{
|
||||||
|
if ((sat >= 1U) && (sat <= 32U))
|
||||||
|
{
|
||||||
|
const int32_t max = (int32_t)((1U << (sat - 1U)) - 1U);
|
||||||
|
const int32_t min = -1 - max ;
|
||||||
|
if (val > max)
|
||||||
|
{
|
||||||
|
return max;
|
||||||
|
}
|
||||||
|
else if (val < min)
|
||||||
|
{
|
||||||
|
return min;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return val;
|
||||||
|
}
|
||||||
|
|
||||||
|
__STATIC_INLINE uint32_t __USAT(int32_t val, uint32_t sat)
|
||||||
|
{
|
||||||
|
if (sat <= 31U)
|
||||||
|
{
|
||||||
|
const uint32_t max = ((1U << sat) - 1U);
|
||||||
|
if (val > (int32_t)max)
|
||||||
|
{
|
||||||
|
return max;
|
||||||
|
}
|
||||||
|
else if (val < 0)
|
||||||
|
{
|
||||||
|
return 0U;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return (uint32_t)val;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if (__CORTEX_M >= 0x03) /* __CORTEX_M is defined in core_cm0.h, core_cm3.h and core_cm4.h. */
|
||||||
|
|
||||||
|
__IAR_FT uint8_t __LDRBT(volatile uint8_t *addr)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
__ASM("LDRBT %0, [%1]" : "=r" (res) : "r" (addr) : "memory");
|
||||||
|
return ((uint8_t)res);
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT uint16_t __LDRHT(volatile uint16_t *addr)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
__ASM("LDRHT %0, [%1]" : "=r" (res) : "r" (addr) : "memory");
|
||||||
|
return ((uint16_t)res);
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT uint32_t __LDRT(volatile uint32_t *addr)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
__ASM("LDRT %0, [%1]" : "=r" (res) : "r" (addr) : "memory");
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT void __STRBT(uint8_t value, volatile uint8_t *addr)
|
||||||
|
{
|
||||||
|
__ASM("STRBT %1, [%0]" : : "r" (addr), "r" ((uint32_t)value) : "memory");
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT void __STRHT(uint16_t value, volatile uint16_t *addr)
|
||||||
|
{
|
||||||
|
__ASM("STRHT %1, [%0]" : : "r" (addr), "r" ((uint32_t)value) : "memory");
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT void __STRT(uint32_t value, volatile uint32_t *addr)
|
||||||
|
{
|
||||||
|
__ASM("STRT %1, [%0]" : : "r" (addr), "r" (value) : "memory");
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif /* (__CORTEX_M >= 0x03) */
|
||||||
|
|
||||||
|
#if ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \
|
||||||
|
(defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) )
|
||||||
|
|
||||||
|
|
||||||
|
__IAR_FT uint8_t __LDAB(volatile uint8_t *ptr)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
__ASM volatile ("LDAB %0, [%1]" : "=r" (res) : "r" (ptr) : "memory");
|
||||||
|
return ((uint8_t)res);
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT uint16_t __LDAH(volatile uint16_t *ptr)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
__ASM volatile ("LDAH %0, [%1]" : "=r" (res) : "r" (ptr) : "memory");
|
||||||
|
return ((uint16_t)res);
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT uint32_t __LDA(volatile uint32_t *ptr)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
__ASM volatile ("LDA %0, [%1]" : "=r" (res) : "r" (ptr) : "memory");
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT void __STLB(uint8_t value, volatile uint8_t *ptr)
|
||||||
|
{
|
||||||
|
__ASM volatile ("STLB %1, [%0]" :: "r" (ptr), "r" (value) : "memory");
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT void __STLH(uint16_t value, volatile uint16_t *ptr)
|
||||||
|
{
|
||||||
|
__ASM volatile ("STLH %1, [%0]" :: "r" (ptr), "r" (value) : "memory");
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT void __STL(uint32_t value, volatile uint32_t *ptr)
|
||||||
|
{
|
||||||
|
__ASM volatile ("STL %1, [%0]" :: "r" (ptr), "r" (value) : "memory");
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT uint8_t __LDAEXB(volatile uint8_t *ptr)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
__ASM volatile ("LDAEXB %0, [%1]" : "=r" (res) : "r" (ptr) : "memory");
|
||||||
|
return ((uint8_t)res);
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT uint16_t __LDAEXH(volatile uint16_t *ptr)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
__ASM volatile ("LDAEXH %0, [%1]" : "=r" (res) : "r" (ptr) : "memory");
|
||||||
|
return ((uint16_t)res);
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT uint32_t __LDAEX(volatile uint32_t *ptr)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
__ASM volatile ("LDAEX %0, [%1]" : "=r" (res) : "r" (ptr) : "memory");
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT uint32_t __STLEXB(uint8_t value, volatile uint8_t *ptr)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
__ASM volatile ("STLEXB %0, %2, [%1]" : "=r" (res) : "r" (ptr), "r" (value) : "memory");
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT uint32_t __STLEXH(uint16_t value, volatile uint16_t *ptr)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
__ASM volatile ("STLEXH %0, %2, [%1]" : "=r" (res) : "r" (ptr), "r" (value) : "memory");
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
__IAR_FT uint32_t __STLEX(uint32_t value, volatile uint32_t *ptr)
|
||||||
|
{
|
||||||
|
uint32_t res;
|
||||||
|
__ASM volatile ("STLEX %0, %2, [%1]" : "=r" (res) : "r" (ptr), "r" (value) : "memory");
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif /* __ARM_ARCH_8M_MAIN__ or __ARM_ARCH_8M_BASE__ */
|
||||||
|
|
||||||
|
#undef __IAR_FT
|
||||||
|
#undef __IAR_M0_FAMILY
|
||||||
|
#undef __ICCARM_V8
|
||||||
|
|
||||||
|
#pragma diag_default=Pe940
|
||||||
|
#pragma diag_default=Pe177
|
||||||
|
|
||||||
|
#endif /* __CMSIS_ICCARM_H__ */
|
||||||
39
squeow_sw/Drivers/CMSIS/Include/cmsis_version.h
Normal file
39
squeow_sw/Drivers/CMSIS/Include/cmsis_version.h
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
/**************************************************************************//**
|
||||||
|
* @file cmsis_version.h
|
||||||
|
* @brief CMSIS Core(M) Version definitions
|
||||||
|
* @version V5.0.3
|
||||||
|
* @date 24. June 2019
|
||||||
|
******************************************************************************/
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2009-2019 ARM Limited. All rights reserved.
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the License); you may
|
||||||
|
* not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an AS IS BASIS, WITHOUT
|
||||||
|
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#if defined ( __ICCARM__ )
|
||||||
|
#pragma system_include /* treat file as system include file for MISRA check */
|
||||||
|
#elif defined (__clang__)
|
||||||
|
#pragma clang system_header /* treat file as system include file */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __CMSIS_VERSION_H
|
||||||
|
#define __CMSIS_VERSION_H
|
||||||
|
|
||||||
|
/* CMSIS Version definitions */
|
||||||
|
#define __CM_CMSIS_VERSION_MAIN ( 5U) /*!< [31:16] CMSIS Core(M) main version */
|
||||||
|
#define __CM_CMSIS_VERSION_SUB ( 3U) /*!< [15:0] CMSIS Core(M) sub version */
|
||||||
|
#define __CM_CMSIS_VERSION ((__CM_CMSIS_VERSION_MAIN << 16U) | \
|
||||||
|
__CM_CMSIS_VERSION_SUB ) /*!< CMSIS Core(M) version number */
|
||||||
|
#endif
|
||||||
2968
squeow_sw/Drivers/CMSIS/Include/core_armv81mml.h
Normal file
2968
squeow_sw/Drivers/CMSIS/Include/core_armv81mml.h
Normal file
File diff suppressed because it is too large
Load Diff
1921
squeow_sw/Drivers/CMSIS/Include/core_armv8mbl.h
Normal file
1921
squeow_sw/Drivers/CMSIS/Include/core_armv8mbl.h
Normal file
File diff suppressed because it is too large
Load Diff
2835
squeow_sw/Drivers/CMSIS/Include/core_armv8mml.h
Normal file
2835
squeow_sw/Drivers/CMSIS/Include/core_armv8mml.h
Normal file
File diff suppressed because it is too large
Load Diff
952
squeow_sw/Drivers/CMSIS/Include/core_cm0.h
Normal file
952
squeow_sw/Drivers/CMSIS/Include/core_cm0.h
Normal file
@@ -0,0 +1,952 @@
|
|||||||
|
/**************************************************************************//**
|
||||||
|
* @file core_cm0.h
|
||||||
|
* @brief CMSIS Cortex-M0 Core Peripheral Access Layer Header File
|
||||||
|
* @version V5.0.6
|
||||||
|
* @date 13. March 2019
|
||||||
|
******************************************************************************/
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2009-2019 Arm Limited. All rights reserved.
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the License); you may
|
||||||
|
* not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an AS IS BASIS, WITHOUT
|
||||||
|
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#if defined ( __ICCARM__ )
|
||||||
|
#pragma system_include /* treat file as system include file for MISRA check */
|
||||||
|
#elif defined (__clang__)
|
||||||
|
#pragma clang system_header /* treat file as system include file */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __CORE_CM0_H_GENERIC
|
||||||
|
#define __CORE_CM0_H_GENERIC
|
||||||
|
|
||||||
|
#include <stdint.h>
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
\page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions
|
||||||
|
CMSIS violates the following MISRA-C:2004 rules:
|
||||||
|
|
||||||
|
\li Required Rule 8.5, object/function definition in header file.<br>
|
||||||
|
Function definitions in header files are used to allow 'inlining'.
|
||||||
|
|
||||||
|
\li Required Rule 18.4, declaration of union type or object of union type: '{...}'.<br>
|
||||||
|
Unions are used for effective representation of core registers.
|
||||||
|
|
||||||
|
\li Advisory Rule 19.7, Function-like macro defined.<br>
|
||||||
|
Function-like macros are used to allow more efficient code.
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/*******************************************************************************
|
||||||
|
* CMSIS definitions
|
||||||
|
******************************************************************************/
|
||||||
|
/**
|
||||||
|
\ingroup Cortex_M0
|
||||||
|
@{
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "cmsis_version.h"
|
||||||
|
|
||||||
|
/* CMSIS CM0 definitions */
|
||||||
|
#define __CM0_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */
|
||||||
|
#define __CM0_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */
|
||||||
|
#define __CM0_CMSIS_VERSION ((__CM0_CMSIS_VERSION_MAIN << 16U) | \
|
||||||
|
__CM0_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */
|
||||||
|
|
||||||
|
#define __CORTEX_M (0U) /*!< Cortex-M Core */
|
||||||
|
|
||||||
|
/** __FPU_USED indicates whether an FPU is used or not.
|
||||||
|
This core does not support an FPU at all
|
||||||
|
*/
|
||||||
|
#define __FPU_USED 0U
|
||||||
|
|
||||||
|
#if defined ( __CC_ARM )
|
||||||
|
#if defined __TARGET_FPU_VFP
|
||||||
|
#error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)
|
||||||
|
#if defined __ARM_FP
|
||||||
|
#error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#elif defined ( __GNUC__ )
|
||||||
|
#if defined (__VFP_FP__) && !defined(__SOFTFP__)
|
||||||
|
#error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#elif defined ( __ICCARM__ )
|
||||||
|
#if defined __ARMVFP__
|
||||||
|
#error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#elif defined ( __TI_ARM__ )
|
||||||
|
#if defined __TI_VFP_SUPPORT__
|
||||||
|
#error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#elif defined ( __TASKING__ )
|
||||||
|
#if defined __FPU_VFP__
|
||||||
|
#error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#elif defined ( __CSMC__ )
|
||||||
|
#if ( __CSMC__ & 0x400U)
|
||||||
|
#error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include "cmsis_compiler.h" /* CMSIS compiler specific defines */
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* __CORE_CM0_H_GENERIC */
|
||||||
|
|
||||||
|
#ifndef __CMSIS_GENERIC
|
||||||
|
|
||||||
|
#ifndef __CORE_CM0_H_DEPENDANT
|
||||||
|
#define __CORE_CM0_H_DEPENDANT
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* check device defines and use defaults */
|
||||||
|
#if defined __CHECK_DEVICE_DEFINES
|
||||||
|
#ifndef __CM0_REV
|
||||||
|
#define __CM0_REV 0x0000U
|
||||||
|
#warning "__CM0_REV not defined in device header file; using default!"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __NVIC_PRIO_BITS
|
||||||
|
#define __NVIC_PRIO_BITS 2U
|
||||||
|
#warning "__NVIC_PRIO_BITS not defined in device header file; using default!"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __Vendor_SysTickConfig
|
||||||
|
#define __Vendor_SysTickConfig 0U
|
||||||
|
#warning "__Vendor_SysTickConfig not defined in device header file; using default!"
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* IO definitions (access restrictions to peripheral registers) */
|
||||||
|
/**
|
||||||
|
\defgroup CMSIS_glob_defs CMSIS Global Defines
|
||||||
|
|
||||||
|
<strong>IO Type Qualifiers</strong> are used
|
||||||
|
\li to specify the access to peripheral variables.
|
||||||
|
\li for automatic generation of peripheral register debug information.
|
||||||
|
*/
|
||||||
|
#ifdef __cplusplus
|
||||||
|
#define __I volatile /*!< Defines 'read only' permissions */
|
||||||
|
#else
|
||||||
|
#define __I volatile const /*!< Defines 'read only' permissions */
|
||||||
|
#endif
|
||||||
|
#define __O volatile /*!< Defines 'write only' permissions */
|
||||||
|
#define __IO volatile /*!< Defines 'read / write' permissions */
|
||||||
|
|
||||||
|
/* following defines should be used for structure members */
|
||||||
|
#define __IM volatile const /*! Defines 'read only' structure member permissions */
|
||||||
|
#define __OM volatile /*! Defines 'write only' structure member permissions */
|
||||||
|
#define __IOM volatile /*! Defines 'read / write' structure member permissions */
|
||||||
|
|
||||||
|
/*@} end of group Cortex_M0 */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*******************************************************************************
|
||||||
|
* Register Abstraction
|
||||||
|
Core Register contain:
|
||||||
|
- Core Register
|
||||||
|
- Core NVIC Register
|
||||||
|
- Core SCB Register
|
||||||
|
- Core SysTick Register
|
||||||
|
******************************************************************************/
|
||||||
|
/**
|
||||||
|
\defgroup CMSIS_core_register Defines and Type Definitions
|
||||||
|
\brief Type definitions and defines for Cortex-M processor based devices.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
\ingroup CMSIS_core_register
|
||||||
|
\defgroup CMSIS_CORE Status and Control Registers
|
||||||
|
\brief Core Register type definitions.
|
||||||
|
@{
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Union type to access the Application Program Status Register (APSR).
|
||||||
|
*/
|
||||||
|
typedef union
|
||||||
|
{
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
uint32_t _reserved0:28; /*!< bit: 0..27 Reserved */
|
||||||
|
uint32_t V:1; /*!< bit: 28 Overflow condition code flag */
|
||||||
|
uint32_t C:1; /*!< bit: 29 Carry condition code flag */
|
||||||
|
uint32_t Z:1; /*!< bit: 30 Zero condition code flag */
|
||||||
|
uint32_t N:1; /*!< bit: 31 Negative condition code flag */
|
||||||
|
} b; /*!< Structure used for bit access */
|
||||||
|
uint32_t w; /*!< Type used for word access */
|
||||||
|
} APSR_Type;
|
||||||
|
|
||||||
|
/* APSR Register Definitions */
|
||||||
|
#define APSR_N_Pos 31U /*!< APSR: N Position */
|
||||||
|
#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */
|
||||||
|
|
||||||
|
#define APSR_Z_Pos 30U /*!< APSR: Z Position */
|
||||||
|
#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */
|
||||||
|
|
||||||
|
#define APSR_C_Pos 29U /*!< APSR: C Position */
|
||||||
|
#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */
|
||||||
|
|
||||||
|
#define APSR_V_Pos 28U /*!< APSR: V Position */
|
||||||
|
#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Union type to access the Interrupt Program Status Register (IPSR).
|
||||||
|
*/
|
||||||
|
typedef union
|
||||||
|
{
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */
|
||||||
|
uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */
|
||||||
|
} b; /*!< Structure used for bit access */
|
||||||
|
uint32_t w; /*!< Type used for word access */
|
||||||
|
} IPSR_Type;
|
||||||
|
|
||||||
|
/* IPSR Register Definitions */
|
||||||
|
#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */
|
||||||
|
#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Union type to access the Special-Purpose Program Status Registers (xPSR).
|
||||||
|
*/
|
||||||
|
typedef union
|
||||||
|
{
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */
|
||||||
|
uint32_t _reserved0:15; /*!< bit: 9..23 Reserved */
|
||||||
|
uint32_t T:1; /*!< bit: 24 Thumb bit (read 0) */
|
||||||
|
uint32_t _reserved1:3; /*!< bit: 25..27 Reserved */
|
||||||
|
uint32_t V:1; /*!< bit: 28 Overflow condition code flag */
|
||||||
|
uint32_t C:1; /*!< bit: 29 Carry condition code flag */
|
||||||
|
uint32_t Z:1; /*!< bit: 30 Zero condition code flag */
|
||||||
|
uint32_t N:1; /*!< bit: 31 Negative condition code flag */
|
||||||
|
} b; /*!< Structure used for bit access */
|
||||||
|
uint32_t w; /*!< Type used for word access */
|
||||||
|
} xPSR_Type;
|
||||||
|
|
||||||
|
/* xPSR Register Definitions */
|
||||||
|
#define xPSR_N_Pos 31U /*!< xPSR: N Position */
|
||||||
|
#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */
|
||||||
|
|
||||||
|
#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */
|
||||||
|
#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */
|
||||||
|
|
||||||
|
#define xPSR_C_Pos 29U /*!< xPSR: C Position */
|
||||||
|
#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */
|
||||||
|
|
||||||
|
#define xPSR_V_Pos 28U /*!< xPSR: V Position */
|
||||||
|
#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */
|
||||||
|
|
||||||
|
#define xPSR_T_Pos 24U /*!< xPSR: T Position */
|
||||||
|
#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */
|
||||||
|
|
||||||
|
#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */
|
||||||
|
#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Union type to access the Control Registers (CONTROL).
|
||||||
|
*/
|
||||||
|
typedef union
|
||||||
|
{
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
uint32_t _reserved0:1; /*!< bit: 0 Reserved */
|
||||||
|
uint32_t SPSEL:1; /*!< bit: 1 Stack to be used */
|
||||||
|
uint32_t _reserved1:30; /*!< bit: 2..31 Reserved */
|
||||||
|
} b; /*!< Structure used for bit access */
|
||||||
|
uint32_t w; /*!< Type used for word access */
|
||||||
|
} CONTROL_Type;
|
||||||
|
|
||||||
|
/* CONTROL Register Definitions */
|
||||||
|
#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */
|
||||||
|
#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */
|
||||||
|
|
||||||
|
/*@} end of group CMSIS_CORE */
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\ingroup CMSIS_core_register
|
||||||
|
\defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC)
|
||||||
|
\brief Type definitions for the NVIC Registers
|
||||||
|
@{
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Structure type to access the Nested Vectored Interrupt Controller (NVIC).
|
||||||
|
*/
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
__IOM uint32_t ISER[1U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */
|
||||||
|
uint32_t RESERVED0[31U];
|
||||||
|
__IOM uint32_t ICER[1U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */
|
||||||
|
uint32_t RESERVED1[31U];
|
||||||
|
__IOM uint32_t ISPR[1U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */
|
||||||
|
uint32_t RESERVED2[31U];
|
||||||
|
__IOM uint32_t ICPR[1U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */
|
||||||
|
uint32_t RESERVED3[31U];
|
||||||
|
uint32_t RESERVED4[64U];
|
||||||
|
__IOM uint32_t IP[8U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register */
|
||||||
|
} NVIC_Type;
|
||||||
|
|
||||||
|
/*@} end of group CMSIS_NVIC */
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\ingroup CMSIS_core_register
|
||||||
|
\defgroup CMSIS_SCB System Control Block (SCB)
|
||||||
|
\brief Type definitions for the System Control Block Registers
|
||||||
|
@{
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Structure type to access the System Control Block (SCB).
|
||||||
|
*/
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
__IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */
|
||||||
|
__IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */
|
||||||
|
uint32_t RESERVED0;
|
||||||
|
__IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */
|
||||||
|
__IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */
|
||||||
|
__IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */
|
||||||
|
uint32_t RESERVED1;
|
||||||
|
__IOM uint32_t SHP[2U]; /*!< Offset: 0x01C (R/W) System Handlers Priority Registers. [0] is RESERVED */
|
||||||
|
__IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */
|
||||||
|
} SCB_Type;
|
||||||
|
|
||||||
|
/* SCB CPUID Register Definitions */
|
||||||
|
#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */
|
||||||
|
#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */
|
||||||
|
|
||||||
|
#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */
|
||||||
|
#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */
|
||||||
|
|
||||||
|
#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */
|
||||||
|
#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */
|
||||||
|
|
||||||
|
#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */
|
||||||
|
#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */
|
||||||
|
|
||||||
|
#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */
|
||||||
|
#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */
|
||||||
|
|
||||||
|
/* SCB Interrupt Control State Register Definitions */
|
||||||
|
#define SCB_ICSR_NMIPENDSET_Pos 31U /*!< SCB ICSR: NMIPENDSET Position */
|
||||||
|
#define SCB_ICSR_NMIPENDSET_Msk (1UL << SCB_ICSR_NMIPENDSET_Pos) /*!< SCB ICSR: NMIPENDSET Mask */
|
||||||
|
|
||||||
|
#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */
|
||||||
|
#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */
|
||||||
|
|
||||||
|
#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */
|
||||||
|
#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */
|
||||||
|
|
||||||
|
#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */
|
||||||
|
#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */
|
||||||
|
|
||||||
|
#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */
|
||||||
|
#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */
|
||||||
|
|
||||||
|
#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */
|
||||||
|
#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */
|
||||||
|
|
||||||
|
#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */
|
||||||
|
#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */
|
||||||
|
|
||||||
|
#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */
|
||||||
|
#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */
|
||||||
|
|
||||||
|
#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */
|
||||||
|
#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */
|
||||||
|
|
||||||
|
/* SCB Application Interrupt and Reset Control Register Definitions */
|
||||||
|
#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */
|
||||||
|
#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */
|
||||||
|
|
||||||
|
#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */
|
||||||
|
#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */
|
||||||
|
|
||||||
|
#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */
|
||||||
|
#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */
|
||||||
|
|
||||||
|
#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */
|
||||||
|
#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */
|
||||||
|
|
||||||
|
#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */
|
||||||
|
#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */
|
||||||
|
|
||||||
|
/* SCB System Control Register Definitions */
|
||||||
|
#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */
|
||||||
|
#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */
|
||||||
|
|
||||||
|
#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */
|
||||||
|
#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */
|
||||||
|
|
||||||
|
#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */
|
||||||
|
#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */
|
||||||
|
|
||||||
|
/* SCB Configuration Control Register Definitions */
|
||||||
|
#define SCB_CCR_STKALIGN_Pos 9U /*!< SCB CCR: STKALIGN Position */
|
||||||
|
#define SCB_CCR_STKALIGN_Msk (1UL << SCB_CCR_STKALIGN_Pos) /*!< SCB CCR: STKALIGN Mask */
|
||||||
|
|
||||||
|
#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */
|
||||||
|
#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */
|
||||||
|
|
||||||
|
/* SCB System Handler Control and State Register Definitions */
|
||||||
|
#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */
|
||||||
|
#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */
|
||||||
|
|
||||||
|
/*@} end of group CMSIS_SCB */
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\ingroup CMSIS_core_register
|
||||||
|
\defgroup CMSIS_SysTick System Tick Timer (SysTick)
|
||||||
|
\brief Type definitions for the System Timer Registers.
|
||||||
|
@{
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Structure type to access the System Timer (SysTick).
|
||||||
|
*/
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
__IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */
|
||||||
|
__IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */
|
||||||
|
__IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */
|
||||||
|
__IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */
|
||||||
|
} SysTick_Type;
|
||||||
|
|
||||||
|
/* SysTick Control / Status Register Definitions */
|
||||||
|
#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */
|
||||||
|
#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */
|
||||||
|
|
||||||
|
#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */
|
||||||
|
#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */
|
||||||
|
|
||||||
|
#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */
|
||||||
|
#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */
|
||||||
|
|
||||||
|
#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */
|
||||||
|
#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */
|
||||||
|
|
||||||
|
/* SysTick Reload Register Definitions */
|
||||||
|
#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */
|
||||||
|
#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */
|
||||||
|
|
||||||
|
/* SysTick Current Register Definitions */
|
||||||
|
#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */
|
||||||
|
#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */
|
||||||
|
|
||||||
|
/* SysTick Calibration Register Definitions */
|
||||||
|
#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */
|
||||||
|
#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */
|
||||||
|
|
||||||
|
#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */
|
||||||
|
#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */
|
||||||
|
|
||||||
|
#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */
|
||||||
|
#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */
|
||||||
|
|
||||||
|
/*@} end of group CMSIS_SysTick */
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\ingroup CMSIS_core_register
|
||||||
|
\defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug)
|
||||||
|
\brief Cortex-M0 Core Debug Registers (DCB registers, SHCSR, and DFSR) are only accessible over DAP and not via processor.
|
||||||
|
Therefore they are not covered by the Cortex-M0 header file.
|
||||||
|
@{
|
||||||
|
*/
|
||||||
|
/*@} end of group CMSIS_CoreDebug */
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\ingroup CMSIS_core_register
|
||||||
|
\defgroup CMSIS_core_bitfield Core register bit field macros
|
||||||
|
\brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk).
|
||||||
|
@{
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Mask and shift a bit field value for use in a register bit range.
|
||||||
|
\param[in] field Name of the register bit field.
|
||||||
|
\param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type.
|
||||||
|
\return Masked and shifted value.
|
||||||
|
*/
|
||||||
|
#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk)
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Mask and shift a register value to extract a bit filed value.
|
||||||
|
\param[in] field Name of the register bit field.
|
||||||
|
\param[in] value Value of register. This parameter is interpreted as an uint32_t type.
|
||||||
|
\return Masked and shifted bit field value.
|
||||||
|
*/
|
||||||
|
#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos)
|
||||||
|
|
||||||
|
/*@} end of group CMSIS_core_bitfield */
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\ingroup CMSIS_core_register
|
||||||
|
\defgroup CMSIS_core_base Core Definitions
|
||||||
|
\brief Definitions for base addresses, unions, and structures.
|
||||||
|
@{
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Memory mapping of Core Hardware */
|
||||||
|
#define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */
|
||||||
|
#define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */
|
||||||
|
#define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */
|
||||||
|
#define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */
|
||||||
|
|
||||||
|
#define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */
|
||||||
|
#define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */
|
||||||
|
#define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */
|
||||||
|
|
||||||
|
|
||||||
|
/*@} */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*******************************************************************************
|
||||||
|
* Hardware Abstraction Layer
|
||||||
|
Core Function Interface contains:
|
||||||
|
- Core NVIC Functions
|
||||||
|
- Core SysTick Functions
|
||||||
|
- Core Register Access Functions
|
||||||
|
******************************************************************************/
|
||||||
|
/**
|
||||||
|
\defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* ########################## NVIC functions #################################### */
|
||||||
|
/**
|
||||||
|
\ingroup CMSIS_Core_FunctionInterface
|
||||||
|
\defgroup CMSIS_Core_NVICFunctions NVIC Functions
|
||||||
|
\brief Functions that manage interrupts and exceptions via the NVIC.
|
||||||
|
@{
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifdef CMSIS_NVIC_VIRTUAL
|
||||||
|
#ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE
|
||||||
|
#define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h"
|
||||||
|
#endif
|
||||||
|
#include CMSIS_NVIC_VIRTUAL_HEADER_FILE
|
||||||
|
#else
|
||||||
|
#define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping
|
||||||
|
#define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping
|
||||||
|
#define NVIC_EnableIRQ __NVIC_EnableIRQ
|
||||||
|
#define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ
|
||||||
|
#define NVIC_DisableIRQ __NVIC_DisableIRQ
|
||||||
|
#define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ
|
||||||
|
#define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ
|
||||||
|
#define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ
|
||||||
|
/*#define NVIC_GetActive __NVIC_GetActive not available for Cortex-M0 */
|
||||||
|
#define NVIC_SetPriority __NVIC_SetPriority
|
||||||
|
#define NVIC_GetPriority __NVIC_GetPriority
|
||||||
|
#define NVIC_SystemReset __NVIC_SystemReset
|
||||||
|
#endif /* CMSIS_NVIC_VIRTUAL */
|
||||||
|
|
||||||
|
#ifdef CMSIS_VECTAB_VIRTUAL
|
||||||
|
#ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE
|
||||||
|
#define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h"
|
||||||
|
#endif
|
||||||
|
#include CMSIS_VECTAB_VIRTUAL_HEADER_FILE
|
||||||
|
#else
|
||||||
|
#define NVIC_SetVector __NVIC_SetVector
|
||||||
|
#define NVIC_GetVector __NVIC_GetVector
|
||||||
|
#endif /* (CMSIS_VECTAB_VIRTUAL) */
|
||||||
|
|
||||||
|
#define NVIC_USER_IRQ_OFFSET 16
|
||||||
|
|
||||||
|
|
||||||
|
/* The following EXC_RETURN values are saved the LR on exception entry */
|
||||||
|
#define EXC_RETURN_HANDLER (0xFFFFFFF1UL) /* return to Handler mode, uses MSP after return */
|
||||||
|
#define EXC_RETURN_THREAD_MSP (0xFFFFFFF9UL) /* return to Thread mode, uses MSP after return */
|
||||||
|
#define EXC_RETURN_THREAD_PSP (0xFFFFFFFDUL) /* return to Thread mode, uses PSP after return */
|
||||||
|
|
||||||
|
|
||||||
|
/* Interrupt Priorities are WORD accessible only under Armv6-M */
|
||||||
|
/* The following MACROS handle generation of the register offset and byte masks */
|
||||||
|
#define _BIT_SHIFT(IRQn) ( ((((uint32_t)(int32_t)(IRQn)) ) & 0x03UL) * 8UL)
|
||||||
|
#define _SHP_IDX(IRQn) ( (((((uint32_t)(int32_t)(IRQn)) & 0x0FUL)-8UL) >> 2UL) )
|
||||||
|
#define _IP_IDX(IRQn) ( (((uint32_t)(int32_t)(IRQn)) >> 2UL) )
|
||||||
|
|
||||||
|
#define __NVIC_SetPriorityGrouping(X) (void)(X)
|
||||||
|
#define __NVIC_GetPriorityGrouping() (0U)
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Enable Interrupt
|
||||||
|
\details Enables a device specific interrupt in the NVIC interrupt controller.
|
||||||
|
\param [in] IRQn Device specific interrupt number.
|
||||||
|
\note IRQn must not be negative.
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn)
|
||||||
|
{
|
||||||
|
if ((int32_t)(IRQn) >= 0)
|
||||||
|
{
|
||||||
|
__COMPILER_BARRIER();
|
||||||
|
NVIC->ISER[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
|
||||||
|
__COMPILER_BARRIER();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Get Interrupt Enable status
|
||||||
|
\details Returns a device specific interrupt enable status from the NVIC interrupt controller.
|
||||||
|
\param [in] IRQn Device specific interrupt number.
|
||||||
|
\return 0 Interrupt is not enabled.
|
||||||
|
\return 1 Interrupt is enabled.
|
||||||
|
\note IRQn must not be negative.
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn)
|
||||||
|
{
|
||||||
|
if ((int32_t)(IRQn) >= 0)
|
||||||
|
{
|
||||||
|
return((uint32_t)(((NVIC->ISER[0U] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return(0U);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Disable Interrupt
|
||||||
|
\details Disables a device specific interrupt in the NVIC interrupt controller.
|
||||||
|
\param [in] IRQn Device specific interrupt number.
|
||||||
|
\note IRQn must not be negative.
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn)
|
||||||
|
{
|
||||||
|
if ((int32_t)(IRQn) >= 0)
|
||||||
|
{
|
||||||
|
NVIC->ICER[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
|
||||||
|
__DSB();
|
||||||
|
__ISB();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Get Pending Interrupt
|
||||||
|
\details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt.
|
||||||
|
\param [in] IRQn Device specific interrupt number.
|
||||||
|
\return 0 Interrupt status is not pending.
|
||||||
|
\return 1 Interrupt status is pending.
|
||||||
|
\note IRQn must not be negative.
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn)
|
||||||
|
{
|
||||||
|
if ((int32_t)(IRQn) >= 0)
|
||||||
|
{
|
||||||
|
return((uint32_t)(((NVIC->ISPR[0U] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return(0U);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Set Pending Interrupt
|
||||||
|
\details Sets the pending bit of a device specific interrupt in the NVIC pending register.
|
||||||
|
\param [in] IRQn Device specific interrupt number.
|
||||||
|
\note IRQn must not be negative.
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn)
|
||||||
|
{
|
||||||
|
if ((int32_t)(IRQn) >= 0)
|
||||||
|
{
|
||||||
|
NVIC->ISPR[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Clear Pending Interrupt
|
||||||
|
\details Clears the pending bit of a device specific interrupt in the NVIC pending register.
|
||||||
|
\param [in] IRQn Device specific interrupt number.
|
||||||
|
\note IRQn must not be negative.
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn)
|
||||||
|
{
|
||||||
|
if ((int32_t)(IRQn) >= 0)
|
||||||
|
{
|
||||||
|
NVIC->ICPR[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Set Interrupt Priority
|
||||||
|
\details Sets the priority of a device specific interrupt or a processor exception.
|
||||||
|
The interrupt number can be positive to specify a device specific interrupt,
|
||||||
|
or negative to specify a processor exception.
|
||||||
|
\param [in] IRQn Interrupt number.
|
||||||
|
\param [in] priority Priority to set.
|
||||||
|
\note The priority cannot be set for every processor exception.
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority)
|
||||||
|
{
|
||||||
|
if ((int32_t)(IRQn) >= 0)
|
||||||
|
{
|
||||||
|
NVIC->IP[_IP_IDX(IRQn)] = ((uint32_t)(NVIC->IP[_IP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) |
|
||||||
|
(((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn)));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
SCB->SHP[_SHP_IDX(IRQn)] = ((uint32_t)(SCB->SHP[_SHP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) |
|
||||||
|
(((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn)));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Get Interrupt Priority
|
||||||
|
\details Reads the priority of a device specific interrupt or a processor exception.
|
||||||
|
The interrupt number can be positive to specify a device specific interrupt,
|
||||||
|
or negative to specify a processor exception.
|
||||||
|
\param [in] IRQn Interrupt number.
|
||||||
|
\return Interrupt Priority.
|
||||||
|
Value is aligned automatically to the implemented priority bits of the microcontroller.
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn)
|
||||||
|
{
|
||||||
|
|
||||||
|
if ((int32_t)(IRQn) >= 0)
|
||||||
|
{
|
||||||
|
return((uint32_t)(((NVIC->IP[ _IP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS)));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return((uint32_t)(((SCB->SHP[_SHP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS)));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Encode Priority
|
||||||
|
\details Encodes the priority for an interrupt with the given priority group,
|
||||||
|
preemptive priority value, and subpriority value.
|
||||||
|
In case of a conflict between priority grouping and available
|
||||||
|
priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set.
|
||||||
|
\param [in] PriorityGroup Used priority group.
|
||||||
|
\param [in] PreemptPriority Preemptive priority value (starting from 0).
|
||||||
|
\param [in] SubPriority Subpriority value (starting from 0).
|
||||||
|
\return Encoded priority. Value can be used in the function \ref NVIC_SetPriority().
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority)
|
||||||
|
{
|
||||||
|
uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */
|
||||||
|
uint32_t PreemptPriorityBits;
|
||||||
|
uint32_t SubPriorityBits;
|
||||||
|
|
||||||
|
PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp);
|
||||||
|
SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS));
|
||||||
|
|
||||||
|
return (
|
||||||
|
((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) |
|
||||||
|
((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL)))
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Decode Priority
|
||||||
|
\details Decodes an interrupt priority value with a given priority group to
|
||||||
|
preemptive priority value and subpriority value.
|
||||||
|
In case of a conflict between priority grouping and available
|
||||||
|
priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set.
|
||||||
|
\param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority().
|
||||||
|
\param [in] PriorityGroup Used priority group.
|
||||||
|
\param [out] pPreemptPriority Preemptive priority value (starting from 0).
|
||||||
|
\param [out] pSubPriority Subpriority value (starting from 0).
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority)
|
||||||
|
{
|
||||||
|
uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */
|
||||||
|
uint32_t PreemptPriorityBits;
|
||||||
|
uint32_t SubPriorityBits;
|
||||||
|
|
||||||
|
PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp);
|
||||||
|
SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS));
|
||||||
|
|
||||||
|
*pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL);
|
||||||
|
*pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Set Interrupt Vector
|
||||||
|
\details Sets an interrupt vector in SRAM based interrupt vector table.
|
||||||
|
The interrupt number can be positive to specify a device specific interrupt,
|
||||||
|
or negative to specify a processor exception.
|
||||||
|
Address 0 must be mapped to SRAM.
|
||||||
|
\param [in] IRQn Interrupt number
|
||||||
|
\param [in] vector Address of interrupt handler function
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector)
|
||||||
|
{
|
||||||
|
uint32_t vectors = 0x0U;
|
||||||
|
(* (int *) (vectors + ((int32_t)IRQn + NVIC_USER_IRQ_OFFSET) * 4)) = vector;
|
||||||
|
/* ARM Application Note 321 states that the M0 does not require the architectural barrier */
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Get Interrupt Vector
|
||||||
|
\details Reads an interrupt vector from interrupt vector table.
|
||||||
|
The interrupt number can be positive to specify a device specific interrupt,
|
||||||
|
or negative to specify a processor exception.
|
||||||
|
\param [in] IRQn Interrupt number.
|
||||||
|
\return Address of interrupt handler function
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn)
|
||||||
|
{
|
||||||
|
uint32_t vectors = 0x0U;
|
||||||
|
return (uint32_t)(* (int *) (vectors + ((int32_t)IRQn + NVIC_USER_IRQ_OFFSET) * 4));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief System Reset
|
||||||
|
\details Initiates a system reset request to reset the MCU.
|
||||||
|
*/
|
||||||
|
__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void)
|
||||||
|
{
|
||||||
|
__DSB(); /* Ensure all outstanding memory accesses included
|
||||||
|
buffered write are completed before reset */
|
||||||
|
SCB->AIRCR = ((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) |
|
||||||
|
SCB_AIRCR_SYSRESETREQ_Msk);
|
||||||
|
__DSB(); /* Ensure completion of memory access */
|
||||||
|
|
||||||
|
for(;;) /* wait until reset */
|
||||||
|
{
|
||||||
|
__NOP();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*@} end of CMSIS_Core_NVICFunctions */
|
||||||
|
|
||||||
|
|
||||||
|
/* ########################## FPU functions #################################### */
|
||||||
|
/**
|
||||||
|
\ingroup CMSIS_Core_FunctionInterface
|
||||||
|
\defgroup CMSIS_Core_FpuFunctions FPU Functions
|
||||||
|
\brief Function that provides FPU type.
|
||||||
|
@{
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief get FPU type
|
||||||
|
\details returns the FPU type
|
||||||
|
\returns
|
||||||
|
- \b 0: No FPU
|
||||||
|
- \b 1: Single precision FPU
|
||||||
|
- \b 2: Double + Single precision FPU
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE uint32_t SCB_GetFPUType(void)
|
||||||
|
{
|
||||||
|
return 0U; /* No FPU */
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*@} end of CMSIS_Core_FpuFunctions */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* ################################## SysTick function ############################################ */
|
||||||
|
/**
|
||||||
|
\ingroup CMSIS_Core_FunctionInterface
|
||||||
|
\defgroup CMSIS_Core_SysTickFunctions SysTick Functions
|
||||||
|
\brief Functions that configure the System.
|
||||||
|
@{
|
||||||
|
*/
|
||||||
|
|
||||||
|
#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U)
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief System Tick Configuration
|
||||||
|
\details Initializes the System Timer and its interrupt, and starts the System Tick Timer.
|
||||||
|
Counter is in free running mode to generate periodic interrupts.
|
||||||
|
\param [in] ticks Number of ticks between two interrupts.
|
||||||
|
\return 0 Function succeeded.
|
||||||
|
\return 1 Function failed.
|
||||||
|
\note When the variable <b>__Vendor_SysTickConfig</b> is set to 1, then the
|
||||||
|
function <b>SysTick_Config</b> is not included. In this case, the file <b><i>device</i>.h</b>
|
||||||
|
must contain a vendor-specific implementation of this function.
|
||||||
|
*/
|
||||||
|
__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks)
|
||||||
|
{
|
||||||
|
if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk)
|
||||||
|
{
|
||||||
|
return (1UL); /* Reload value impossible */
|
||||||
|
}
|
||||||
|
|
||||||
|
SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */
|
||||||
|
NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */
|
||||||
|
SysTick->VAL = 0UL; /* Load the SysTick Counter Value */
|
||||||
|
SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk |
|
||||||
|
SysTick_CTRL_TICKINT_Msk |
|
||||||
|
SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */
|
||||||
|
return (0UL); /* Function successful */
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*@} end of CMSIS_Core_SysTickFunctions */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* __CORE_CM0_H_DEPENDANT */
|
||||||
|
|
||||||
|
#endif /* __CMSIS_GENERIC */
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user