SPI�ӿڵij��e(cu��)����������M(j��n)
��Ƭ�C(j��)(MCU)ϵ�y(t��ng)�����cSPI��(bi��o)��(zh��n)����ӿ������M(j��n)��ͨ�������ʹ��SPI( Serial Peripheral Interface���������O(sh��)�ӿ�)������SPI����ϵ�y(t��ng)��Motorola�����һ�Nͬ���������O(sh��)�ӿ�������̖(h��o)�������f(xi��)�h��(ji��n)������ݔ�ٶȿ�����c(di��n)������в����������������SPI��������Flash RAM��A/ D�D(zhu��n)�Q����LED�@ʾ����MCU�Լ�Ӌ(j��)��C(j��)�W(w��ng)�j(lu��)����MCU�е�SPI�ӿ�ͨ�^(gu��)���ÿ��c����(g��)�S�����a(ch��n)�Ķ�N��(bi��o)��(zh��n)�������ֱ���B����
��(du��)����Щ�]��SPI�ӿڹ��ܵ�MCU��(l��i)�f(shu��)��SPI�ӿڵĹ��ܿ�ܛ������MCU��I/O�ڵķ�����(l��i)ģ�M�����^(gu��)����ܛ����(l��i)ģ�MSPI�ӿڵĹ����������ٶȷdz�����������Ҫ����������ܛ��֮�g��ϵ÷dz���������چ�Ƭ�C(j��)оƬ��(n��i)����Ӳ���·��(l��i)���SPI�ӿڹ�������Ӳ�����Ӳ������r�����܉�O�����߂�ݔ�ٶ�(����l�ʿ��_(d��)���������l�ʵ�1/4)���p�pܛ����ؓ(f��)��(d��n)��ʹ�ØO�鷽����
SPI�ӿڹ����ĕr(sh��)�����]�Б�(y��ng)����̖(h��o)�����Ҕ�(sh��)��(j��)�ڰl(f��)�͵ĕr(sh��)��o(w��)��У�(y��n)λ��������Ҫ������������ܛ�������ȫ����SPI�ĕr(sh��)��Ҫ������t��(sh��)��(j��)��ݔ�����׳��F(xi��n)�e(cu��)�`������ͨ�^(gu��)MCU��SPI�ӿ�ģ�K���O(sh��)Ӌ(j��)��������(sh��)��(j��)��ݔ?sh��)ĸ��N���e(cu��)��r����ᘌ�(du��)���N��r������(qi��ng)SPI�ӿڵ��e(cu��)�`̎��������
1 SPR�O(sh��)���e(cu��)�`
�ڏ������r(sh��)��l��С���������r(sh��)��l�ʕr(sh��)�����SCK�������O(sh��)��̫��������(d��o)�½��յ��Ĕ�(sh��)��(j��)�����_(SPI�ӿڱ����y���Д��յ��Ĕ�(sh��)��(j��)�Ƿ����_��Ҫ��ܛ����̎��)��
����(g��)ϵ�y(t��ng)���ٶ�������(g��)����Ӱ푣��������r(sh��)�CLK�����������r(sh��)�CLK�ĺ�ͬ�����Еr(sh��)�SCK������SCK�nj�(du��)CLK���ķ��l��CLK�ĺ�CLK���Ǯ�������ҪʹSCK�o(w��)���e(cu��)�o(w��)�z©�ر����������z�y(c��)�����������ĕr(sh��)�CLK�ı��Ҫ������������SCK�O(sh��)�Þ�CLK����4���l�IJ��Ξ���������ͬ�����Еr(sh��)������r(sh��)犺͏ĕr(sh��)�֮�g���P(gu��n)ϵ��

�D1���ĕr(sh��)犺�SCK���P(gu��n)ϵ
��D1��ʾ����(d��ng)T��
�D2������(d��ng)T��≥TSCK/2=2T���r(sh��)����clk_s�ăɂ�(g��)�����ض��z�y(c��)����SCK�ĵ��ƽ,�@�ӏ������͕�(hu��)©��һ��(g��)SCK����ijЩ��λ�l��������ʹCLK�ăe���ܙz�y(c��)��SCK�ĵ��ƽ��Ҳ���ܱ��C�����^�m(x��)�z�y(c��)����һ��(g��)SCK��ֻҪ�z©��һ��(g��)SCK�����ஔ(d��ng)�ڴ��Д�(sh��)��(j��)©����һ��(g��)λ�������^�m(x��)����/�l(f��)�͵Ĕ�(sh��)��(j��)�Ͷ����e(cu��)�`������

�D2���ĕr(sh��)犺�SCK���P(gu��n)ϵ
����(j��)���ϵķ�����SPR�����ĕr(sh��)犱ȵ��P(gu��n)ϵ���1������
��1SPR���O(sh��)�ú����ĕr(sh��)����ڱ�ֵ֮�g���P(gu��n)ϵ
�ڰl(f��)�͔�(sh��)��(j��)֮ǰ���ձ�1��(du��)SPR�M(j��n)���O(sh��)����SPR�O(sh��)���e(cu��)�`������ȫ������
2 ģʽ�e(cu��)�`(MODF)
ģʽ�e(cu��)�`��ʾ��������ģʽ�x����O(sh��)�ú����_SS���B�Ӳ�һ����
������������ģʽ�ĕr(sh��)��(MSTR=1)������Ƭ�x��̖(h��o)SS���_��횽Ӹ��ƽ���ڰl(f��)�͔�(sh��)��(j��)���^(gu��)�������������SS�ĸ��ƽ�������ƽ����SS���½�����SPIģ�K���z�y(c��)��ģʽ�e(cu��)�`����(du��)MODFλ��1����(qi��ng)����������ģʽ�D(zhu��n)���ģʽ(����MSTR=0)����Ճ�(n��i)��Ӌ(j��)��(sh��)��counter�����Y(ji��)�������M(j��n)�еĔ�(sh��)��(j��)��ݔ����D3(a)��ʾ��
��(du��)��ģʽ(MSTR=0)���ڛ]�Д�(sh��)��(j��)���͵ĕr(sh��)����SS���ƽ��ʾ������δ���x������������������MISOݔ������;�ڔ�(sh��)��(j��)��ݔ�^(gu��)������Ƭ�x��̖(h��o)SS��횽ӵ��ƽ����SS�����S��׃�����SS�ĵ��ƽ�������ƽ����SS����������SPIģ�KҲ���z�y(c��)��ģʽ�e(cu��)�`����Ճ�(n��i)��Ӌ(j��)��(sh��)��counter�����Y(ji��)�������M(j��n)�еĔ�(sh��)��(j��)��ݔ��ֱ��SS�֏�(f��)����ƽ������ʹSPEN=1�r(sh��)���������_ʼ��������D3(b)��ʾ��

�D3ģʽ�e(cu��)�`�ęz�y(c��)
3 ����e(cu��)�`(OVR)
����e(cu��)�`��ʾ�B�m(x��)��ݔ����(g��)��(sh��)��(j��)�r(sh��)����һ��(g��)��(sh��)��(j��)���w��ǰһ��(g��)��(sh��)��(j��)���a(ch��n)�����e(cu��)�`��
��B(t��i)��(bi��o)־SPIF��ʾ���ǔ�(sh��)��(j��)��ݔ�����M(j��n)����������(du��)��(sh��)��(j��)�Ă�ݔ���^���Ӱ�����������SPIF��Ч�ɔ�(sh��)��(j��)�Ĵ����Ŀ�(bi��o)־SPTE=0�a(ch��n)��������������SPIF��Ч�tֻ�����յ��ĵ�һ��(g��)SCK����׃�a(ch��n)�����������ڏ�������SPIF���������l(f��)����SCK�Ǯ���������ˏ������Ă�ݔ��(bi��o)־SPIF������(du��)���������Ă�ݔ��(bi��o)־SPIF����һ���Ĝ�������D4��ʾ�����������B�m(x��)�l(f��)�̓ɂ�(g��)��(sh��)��(j��)�ĕr(sh��)��?q��)��п��܌?d��o)�������Ă�ݔ��(bi��o)־����������һ��(g��)��(sh��)��(j��)�Ă�ݔ��(bi��o)־���دB(�D4��̓�����Ӱ����)����һ��(g��)�յ��Ĕ�(sh��)��(j��)��Ȼ�����w���ڶ���(g��)��(sh��)��(j��)����/�l(f��)Ҳ��Ȼ���e(cu��)���a(ch��n)������e(cu��)�`��

�D4����e(cu��)�`
ͨ�^(gu��)��(du��)�������IJ��η����l(f��)�F(xi��n)��counter=8��ĵ�һ��(g��)�r(sh��)���������(sh��)��(j��)���һλ�Ă�ݔ�ѽ�(j��ng)������ڔ�(sh��)��(j��)�ѽ�(j��ng)��/�l(f��)�ꮅ����r����counter=8��B(t��i)���L(zh��ng)�̌�(du��)��(sh��)��(j��)�����_�ԛ]��Ӱ�����˿��Կs��counter=8�Ġ�B(t��i)���Ա���ǰһ��(g��)SPIF�ͺ�һ��(g��)SPIF���دB���@������Ӳ���ϱ������@һ�A�ε�����e(cu��)�`��
��������������������ٶȲ�������ܛ������̎��������������SPI�ӿڽ��յ��Ĕ�(sh��)��(j��)��δ���xȡ����r�����ֽ��յ�һ��(g��)�µĔ�(sh��)��(j��)������e(cu��)�`߀�Ǖ�(hu��)�l(f��)�������˕r(sh��)��SPI�ӿڱ��o(h��)ǰһ��(g��)��(sh��)��(j��)�������w���ᗉ���յ��Ĕ�(sh��)��(j��)���������(bi��o)־OVR=1;����l(f��)���Д���̖(h��o)(���ԓ�Д����S)��֪ͨ���������r(sh��)�xȡ��(sh��)��(j��)��
4 ƫ���e(cu��)�`(OFST)
SPI�ӿ�һ��Ҫ��������ȹ�����Ȼ�����������_ʼ�l(f��)�͔�(sh��)��(j��)���Еr(sh��)������������l(f��)�͔�(sh��)��(j��)���^(gu��)���������������_ʼ����������SCK�ܵ����ɔ_��������δ�ܜ�(zh��n)�_�ؽ��յ�8��(g��)SCK����D5��ʾ�����������յ���8��(g��)SCK�䌍(sh��)�nj����������l(f��)�������ăɂ�(g��)��(sh��)��(j��)��SCK�����@�r(sh��)����������SPIF�͏�������SPIF��(hu��)�l(f��)���دB����(sh��)��(j��)�l(f��)�����e(cu��)λ���������������(du��)���M(j��n)�мm����Ԓ����(sh��)��(j��)�Ľ���/�l(f��)�ͱ�һֱ���e(cu��)��ȥ��

�D5ƫ���e(cu��)�`
��һ��(g��)��(sh��)��(j��)�Ă�ݔ�^(gu��)���У�SPR�Dz����S��׃������SCK�Ǿ���������ĈD5���Կ��������������յ���8��(g��)SCK���������������Ƿքe���ڃɂ�(g��)��(sh��)��(j��)������˿���Ӌ(j��)��SCK��ռ�Օr(sh��)�g��(l��i)�Д��Ƿ�l(f��)����ƫ���e(cu��)�`����(j��ng)�����������r(sh��)��SCK=1�r(sh��)�ĕr(sh��)����ڔ�(sh��)n��ȡֵ�M�������P(gu��n)ϵ��

���������ĕr(sh��)�֮�g�Ǯ����������ҽ�(j��ng)�^(gu��)��ȡ�������������r(sh��)��SCK=1�r(sh��)�ĕr(sh��)�����Ӌ(j��)��(sh��)ֵCOUNT��(y��ng)�M�㣺

�����ڈD5����COUNT�����ֵCOUNT(max)=2����1�������J(r��n)����������������(d��ng)���F(xi��n)COUNT(max)=8�r(sh��)�������ж����F(xi��n)��ƫ���e(cu��)�`���ڌ�(sh��)�H�O(sh��)Ӌ(j��)������ӛ��µ�һ��(g��)COUNT(max)��ֵ����������ֳ��F(xi��n)�cӛ�ֵ���1���ϵ�COUNT(max)���F(xi��n)����֪��ƫ���e(cu��)�`OFST
�l(f��)����SPI�ӿ���“������”�ĵط���SPIF=1��Ȼ���(zh��n)��ȴ���һ��(g��)��(sh��)��(j��)�ĵ�һ��(g��)SCK������COUNT��λ��(sh��)�̶���8λ�����˱�������r(sh��)����00H�_ʼӋ(j��)��(sh��)����(d��ng)Ӌ(j��)��(sh��)�_(d��)��ffH�r(sh��)ֹͣӋ(j��)��(sh��)��
5 �����e(cu��)�`
�O(sh��)������(d��ng)�������ܵ����ɔ_����(sh��)��(j��)��ݔ�y���(hu��)�l(f��)���e(cu��)�`�������Еr(sh��)ܛ����(du��)�e(cu��)�`�ķN��Д�壬���Ҫ��һ�N������(qi��ng)��SPI�ӿڏ��e(cu��)�`��B(t��i)�л֏�(f��)�^(gu��)��(l��i)����SPI����������SPEN=0�ĕr(sh��)�������SPIģ�K��(n��i)�������еĠ�B(t��i)(���üĴ�������)�����ܛ���ڽ��Ք�(sh��)��(j��)�ĕr(sh��)�����܉�l(f��)�F(xi��n)��(sh��)��(j��)���e(cu��)�`���o(w��)Փ��ʲô�e(cu��)�`�������ԏ�(qi��ng)��ֹͣSPI�Ĺ����������M(j��n)�Д�(sh��)��(j��)��ݔ����������ƫ���e(cu��)�`(OFST)�������SPR2��SPR1��SPR0���O(sh��)���m��(d��ng)��Ҳ����ʹSCK�@�ñ��^“����”��SPI�ӿ�Ӳ�����������ܙz�y(c��)�����e(cu��)�`�����Ñ�ܛ���܉�l(f��)�F(xi��n)�e(cu��)�`���@�r(sh��)�Ϳ��ԏ�(qi��ng)��ֹͣSPI�Ă�ݔ�������@�ӾͿ��Ա����e(cu��)�`һֱ���m(x��)��ȥ��
�Y(ji��)�Z(y��)
���Č�(du��)SPI�ӿ�֮�g��(sh��)��(j��)��ݔ�и��N���e(cu��)��r�M(j��n)�з���������(du��)SPI�ӿ�̎���e(cu��)�`�������M(j��n)������(qi��ng)����(du��)һЩ��ݔ�e(cu��)�`��SPI�ӿڿ��ԙz�y(c��)����(l��i)��ͨ�^(gu��)��(du��)���N�e(cu��)�`��B(t��i)�Ĵ����M(j��n)����λ����������(y��ng)��̎����Q��������Щ�e(cu��)�`��Ӳ������������Ǚz�y(c��)�����ġ�������ڑ�(y��ng)�����������(du��)��(sh��)��(j��)�����_��Ҫ���^��������Ҫ��ܛ���ϝM��SPI�ӿڵĕr(sh��)��Ҫ������߀��Ҫ��ܛ�������m��(d��ng)?sh��)�̎���?/p>
�U(ku��)չ��x��?ji��n)�Ƭ�C(j��)��Ҋ���ϼ�̎������

����admin ����ĕr(sh��)�g��2018-05-19