搜索
bottom↓
12
返回列表 发新帖
楼主: armok

使用过的网友来拍砖:广告满天飞, 新唐MO性能差得可以去死?...(请关注45楼的开源测试提

[复制链接]
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2011-8-3 16:48:51 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

发表于 2011-8-3 16:59:43 | 显示全部楼层
回复【95楼】zhifeng
-----------------------------------------------------------------------

要下载《技术参考手册》里面才有寄存器哦。不是DataSheet。

出0入0汤圆

发表于 2011-8-3 17:15:20 | 显示全部楼层
http://www.nuvoton.com/NuvotonMOSS/Community/ProductInfo.aspx?tp_GUID=ca35dc89-c740-421a-b13b-5a8d050315e3
这里下载《技术参考手册》,内有寄存器描述。

出0入0汤圆

发表于 2011-8-3 17:22:55 | 显示全部楼层
申请资料和开发板比较难,几次都说是只针对深圳地区的,本来还想试试,后来也就那么算了。

出95入100汤圆

发表于 2011-8-3 17:24:58 | 显示全部楼层
回复【75楼】huanggua
-----------------------------------------------------------------------

日系的差不多都做得到

出0入0汤圆

发表于 2011-8-3 17:26:49 | 显示全部楼层
找芯片和开发板的,要找代理。
如果是公司,一般都给。
是个人行为,估计够呛。

新塘的没那么差。

每个芯片都有他 的长处和短处。

出0入0汤圆

发表于 2011-8-3 17:42:17 | 显示全部楼层
呵呵 不要争,工程师都有自个的使用习惯,另外你M0和M3去比这本来就是一个错误。如果一个产品都那么完美那早就是一家一统天下,可为什么没有了,就像欧美以质量好价格高为名,台糸日糸以价格便宜质量居中为名,国产以便宜扫天下,就像技术水平来说工程师和工程师还区别大的很,为什么有的工程师一个月几W有些人几年了还是3-5K之间
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2011-8-3 17:46:19 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

发表于 2011-8-3 19:28:38 | 显示全部楼层
看看,学习学习。

出0入22汤圆

发表于 2011-8-3 19:47:08 | 显示全部楼层
M052 外设做得太小儿科。

开发手册写得像会计的账簿。。 看得云里雾里。

出0入0汤圆

发表于 2011-8-3 19:59:26 | 显示全部楼层
技术参考手册很详细

出0入0汤圆

发表于 2011-8-3 20:21:10 | 显示全部楼层
点击此处下载 ourdev_663942M4Z9MU.zip(文件大小:4.52M) (原文件名:NuMicro NUC100_120 Technical Reference Manual SC.zip)

至于能不能用,反正我是能用的。

出0入0汤圆

发表于 2011-8-3 22:13:18 | 显示全部楼层
本人用过M052驱动SD卡,读写速度大概500KB/S,
还用nuc120驱动ssd1963,显示屏为800*480,65K色,从SD卡读bmp图片,在显示屏上显示出来,刷新一张图片大概要2秒的时间
其他的实验就没做过了,M052速度确实比51快很多

出0入0汤圆

发表于 2011-8-3 22:55:38 | 显示全部楼层
to :【113楼】 gliet_su  不好意思你的这个资料是我所要找的。我是按 103楼】 Delong_z 天之蛟龙提供的链接
http://www.nuvoton.com/NuvotonMOSS/Community/ProductInfo.aspx?tp_GUID=ca35dc89-c740-421a-b13b-5a8d050315e3
处找到了。但我从芯唐的主页http://www.nuvoton.com进入怎么也找不到这个资料。不知芯唐在想些什么。
  不管如何,还是非常感谢两位。我现在,使用nuc120的usb功能,所有的功能都实现了,就是通讯不稳定,pc端程序是以前使用的,稳定性不用怀疑。估计芯片的固件有问题,所以要找寄存器的资料看看那里有问题。


(原文件名:nuc120.JPG)
老是出这种错,get report 返回,随机出错。

出0入0汤圆

发表于 2011-8-3 23:30:38 | 显示全部楼层
新唐的板子一直放着没动。
一开始打算用M0的,可惜RAM和Flash都能往上再扩展。
后来从ST的101切换到100了,P2P,使用起来更得心应手。

出0入0汤圆

发表于 2011-8-4 00:09:32 | 显示全部楼层
回复【8楼】HYLG  
坛子里有个贴子说可以申请样片,联系了又说不行,就买了块200块钱的试验板和4片芯片,板上还带个小屏。收到板后想点下屏,结果人家技术说例程还没编好呢。这几个月过去了,不知道例程编好了没有。
-----------------------------------------------------------------------

我朋友花200买了一张NUC100的实验板,上面有NULINK和NUC100,后来我又用他的名义找同一个人买了10片IC自己玩。

我现在根本不去找卖我IC的那个人,因为以前和他谈过2次,感觉问他还不如自己翻论坛,实在不懂就去邮件联系官方技术支持。
前期就发现TRM和DS里很多错误,现在好象修正了,但是和MICROCHIP比起来,翻译得差,说明不够准确利落。
MICROCHIP台湾论坛那边的斑竹水平很强,实在不行邮件联系官方技术支持也可以。
而2IIC这边,或者牛皮糖论坛,就一个菜农在叫,说实话他的东西我实在看不懂,虽然他在推NUC1XX和M05X,
但是看他的帖子我觉得好象学不到什么,或许是我是初学者的缘故。
BSP我一直有更新,官方的范例只要更新BSP就可以看到。我的感觉库太烂了,即使用菜农的什么红头文件,依然不是很好。


有人说功耗高,我没玩微功耗的,不知道。IO口翻转速度我试过可以到5MHZ左右,整系列没有SDIO,SD卡只能用SPI跑。

我正在用M0做个DP,以前做过DSPIC的,现在打算移植到120RE3上,再加上高容量文件格式的支持 ,
顺便接管原来CD机上NEC主控对机心和显示的控制,我认为这点小事情它还是可以完成的。
暂时不打算换STM32,或者等F205普及我就会换了。

出0入0汤圆

发表于 2011-8-4 00:33:26 | 显示全部楼层
GPIOB->PMD.PMD14=1; //IO led
while(1){GPIOB->DOUT = 1<<14;GPIOB->DOUT = 0;}


96MHZ (12X8 PLL) 约9MHZ,正好板子在手边,随便写写测一测。



(原文件名:yyx.JPG)


(原文件名:yyy.JPG)

出0入0汤圆

发表于 2011-8-4 08:14:49 | 显示全部楼层
回复【115楼】zhifeng
to :【113楼】 gliet_su  不好意思你的这个资料是我所要找的。我是按 103楼】 delong_z 天之蛟龙提供的链接
http://www.nuvoton.com/nuvotonmoss/community/productinfo.aspx?tp_guid=ca35dc89-c740-421a-b13b-5a8d050315e3  
处找到了。但我从芯唐的主页http://www.nuvoton.com进入怎么也找不到这个资料。不知芯唐在想些什么。
  不管如何,还是非常感谢两位。我现在,使用nuc120的usb功能,所有的功能都实现了,就是通讯不稳定,pc端程序是以前使用的,稳定性不用怀疑。估计芯片的固件有问题,所以要找寄存器的资料看看那里有问题。

<center>
(原文件名:nuc120.jpg) </c......
-----------------------------------------------------------------------

回复【115楼】zhifeng
to :【113楼】 gliet_su  不好意思你的这个资料是我所要找的。我是按 103楼】 delong_z 天之蛟龙提供的链接
http://www.nuvoton.com/nuvotonmoss/community/productinfo.aspx?tp_guid=ca35dc89-c740-421a-b13b-5a8d050315e3  
处找到了。但我从芯唐的主页http://www.nuvoton.com进入怎么也找不到这个资料。不知芯唐在想些什么。
  不管如何,还是非常感谢两位。我现在,使用nuc120的usb功能,所有的功能都实现了,就是通讯不稳定,pc端程序是以前使用的,稳定性不用怀疑。估计芯片的固件有问题,所以要找寄存器的资料看看那里有问题。

<center>
(原文件名:nuc120.jpg) </c......
-----------------------------------------------------------------------

把代码贴出来,让大家看一下哪里出了问题.

出0入0汤圆

发表于 2011-8-4 09:17:25 | 显示全部楼层
大战开始了。。。

出0入0汤圆

发表于 2011-8-4 09:23:07 | 显示全部楼层
回复【118楼】90999  张耀扬
-----------------------------------------------------------------------

你用的代码只有高电平时间_可能_是最小的;低电平因为循环相关指令的缘故,会长。

要写一堆=1,=0这样的指令,并且看汇编是不是STR xx 0, STR xx 1这样的操作。否则不是最高IO频率。

出0入0汤圆

发表于 2011-8-4 09:28:47 | 显示全部楼层
回复【58楼】wmm20031015
m0的adc实测过,当10位用是有保证的,内部时钟连接串口一直没搞定,用外部12m晶体一点问题没有
-----------------------------------------------------------------------

为验证你所说是否属实,我昨天在芯唐BSP的串口程序基础上修改,时钟源配置成内部22M,跑115200,好用的很,只能说你不会用

出0入0汤圆

发表于 2011-8-4 09:49:47 | 显示全部楼层
94: GPIOB->DOUT = 0xffff;
0x00000588 4A02      LDR      r2,[pc,#8]  ; @0x00000594
0x0000058A 4803      LDR      r0,[pc,#12]  ; @0x00000598
    95: GPIOB->DOUT = 0;
0x0000058C 2100      MOVS     r1,#0x00
0x0000058E 6082      STR      r2,[r0,#0x08]
0x00000590 6081      STR      r1,[r0,#0x08]
0x00000592 E7FC      B        0x0000058E



感觉就那么快了....... 1/10 ........

出0入0汤圆

发表于 2011-8-4 10:01:20 | 显示全部楼层
我觉得应该找一个和新塘某款芯片价格差不多的芯片来对比测试比较好,价格低,差一点也是会被人接受的,例如STC,不怎么样,但是价格比较便宜,加一些场合用的不少!
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2011-8-4 10:29:21 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

发表于 2011-8-4 10:48:37 | 显示全部楼层
谁来个lpc12XX  lpc11XX的测试和m051对比下??

出0入0汤圆

发表于 2011-8-4 12:39:09 | 显示全部楼层
回复【123楼】90999 张耀扬
-----------------------------------------------------------------------

可以达到主频的四分之一,请看59楼

出0入0汤圆

发表于 2011-8-4 12:48:43 | 显示全部楼层
回复【127楼】rigol_fan  西门吹雪
回复【123楼】90999 张耀扬
-----------------------------------------------------------------------

可以达到主频的四分之一,请看59楼
-----------------------------------------------------------------------

我当然知道可以到1/4,我是说随便写写就可以>5MHZ而已。

出0入0汤圆

发表于 2011-8-4 12:52:20 | 显示全部楼层
公司用了几十k的M0了。

价格低得惊人。
(备注:价格直接找新唐谈的)

以上两句:第一句完全实话,第二句是本人主观感觉。

出0入0汤圆

发表于 2011-8-4 13:05:18 | 显示全部楼层
M0的性能

运算性能比stm M3差很多  乘法只有16位 乘以 16位

很大的优势就是价格了

出0入0汤圆

发表于 2011-8-4 13:10:05 | 显示全部楼层
stm的M0芯片就是千呼万唤始不出来,要不然说不定用了stm的了

出0入0汤圆

发表于 2011-8-11 16:29:02 | 显示全部楼层
测试就OK不管别人怎么说自个测试才是真的

出0入0汤圆

发表于 2011-8-13 09:26:38 | 显示全部楼层
最近再搞nuc120的芯片,反反复复的试,无论是使用hid中断传输,还是使用特性传输,in 数据总是有问题。目前,在下判断此芯片有可能存在问题,在5v下工作出错的概率非常的大,在3.3下几乎不在出现错误。l

    另外,上位机软件使用我们非常成熟的progisp/powerprg 软件,几乎可以排除此处出问题的可能,再说从监视软件显示错位的结果,就是nuc120芯片没有发送包上来,具体,没有usb硬件调试工具,还不敢下定论。

    具体情况需要进一步确认,星期一,看看能不能找到芯唐的技术人员,看看到底咋回事?

bus hound 监视    出错提示 USTS c0000005 no response  

     使用官方的演示Smpl_HIDTransfer例子,也是经常出现这个错误。

出0入0汤圆

发表于 2011-8-17 16:56:10 | 显示全部楼层
用coocox配合新唐小板,对于初学者比较容易

(原文件名:card40.jpg)
管脚和51一致,小板上有3个led和1个按钮,可以做流水灯,PWM,和int0中断试验,coide的向导对于初学者非常方便。直接用小板加上nu link就可以,连外接电源都不用(通过nu link的usb供电)如果接一个51开发板,就可以实现串口发信(配串口助手)

出0入0汤圆

发表于 2011-8-17 18:55:49 | 显示全部楼层
M0的,确实应该关注一下

出0入0汤圆

发表于 2011-8-17 22:05:03 | 显示全部楼层
回复【136楼】aabbccdd
-----------------------------------------------------------------------

是的,就是他,你的好一些,是516的,我的是58

出0入0汤圆

发表于 2011-8-17 22:12:10 | 显示全部楼层
下面是nu-link,版本要升级一下,在coide就可以下载了

(原文件名:card401 005.jpg)
补充一点,用nu link,只要最右边的5个接点就行,另外这个板没有晶振,要外接12M晶振和两个电容,位置和51一致。

出0入0汤圆

发表于 2011-8-20 20:37:17 | 显示全部楼层
新唐应该不错吧?人家毕竟是做BIOS出生的,华邦的BIOS我上初中就见过。
我认识一个做产品的,做室内控制设备,以前用STC,后面全改用新唐。
希望新唐能多点相关资料

出0入0汤圆

发表于 2011-8-21 01:21:11 | 显示全部楼层
回复【134楼】zhifeng  
最近再搞nuc120的芯片,反反复复的试,无论是使用hid中断传输,还是使用特性传输,in 数据总是有问题。目前,在下判断此芯片有可能存在问题,在5v下工作出错的概率非常的大,在3.3下几乎不在出现错误。l

    另外,上位机软件使用我们非常成熟的progisp/powerprg 软件,几乎可以排除此处出问题的可能,再说从监视软件显示错位的结果,就是nuc120芯片没有发送包上来,具体,没有usb硬件调试工具,还不敢下定论。

    具体情况需要进一步确认,星期一,看看能不能找到芯唐的技术人员,看看到底咋回事?

bus hound 监视    出错提示 usts c0000005 no response  

     使用官方的演示smpl_hidtransfer例子,也是经常出现这个错误。
-----------------------------------------------------------------------


还有这事!!!!

出0入0汤圆

发表于 2011-8-21 10:01:59 | 显示全部楼层
USB还有这个,太头疼了吧

出0入0汤圆

发表于 2011-8-21 10:08:51 | 显示全部楼层
我已反映到他们代理商的一个技术支持那里了,我将usb部分的源程序,与遇到情况的录像都发给他了,目前,还没有结果。

你先不要急,这个问题很特殊,等我描述清楚,你再回复
V 9:27:14
你先说下具体情况吧
智峰软件 9:34:47
你收下这个
智峰软件 9:35:08
你看看这个录像,就容易理解了
智峰软件 9:40:22
我现在是用nuc120 制作的下载器,操作对avr芯片的读写。如果avr芯片是空的,那么读出芯片的数据都是0xff,这时nuc120的usb通讯是正常了,如果avr芯片为非空的,也就是说读出有可能是非0xff,这时,nuc120的usb就出错了。  我是isp模式操作的,也就是miso的口线电平会变化,反映到nuc120上面就是唯一的一个io口的电平会变化,这时就干扰了nuc120 usb通讯出错。
智峰软件 9:44:11
出现这个问题是随机的。这个问题,很是头疼,我已经搞了很久了。没有进展,最终追踪到nuc  usb不响应中断,我没有usb硬件调试器,无法往下查。
智峰软件 9:45:57
我用usb hid 中断模式也写了一个版本的,结果和这个差不多。都是,in报告出错。而且都是随机的。我使用过,官方驱动。现在这个驱动是我从keil中移植的。结果都是一样的
智峰软件 9:47:16
因此,我在怀疑,是不是芯唐这个芯片此处有些问题?要不,不会出现这种奇怪的问题
V 9:50:45
好的,我先看下
智峰软件 9:52:32
void U_spi ( unsigned char * cmd, unsigned char * res, unsigned char n )
{
    unsigned char rec_byte,send_byte;
    unsigned char i;

    while (n != 0)
    {
        n--;
        send_byte = *cmd++;
        rec_byte = 0;
        for (i = 0; i < 8; i++)
        {

            /* set MSB to MOSI-pin */
            if ((send_byte & 0x80) != 0)
            {
                ISP_MOSI;  /* MOSI high */
            }
            else
            {
                ISP_MOSI0; /* MOSI low */
            }
            /* shift to next bit */
            send_byte  = send_byte << 1;

            /* receive data */
            rec_byte = rec_byte << 1;
            if (ISP_MISO_I)
            {
                rec_byte++;
            }

            /* pulse SCK */
            ISP_SCK;     /* SCK high */
            Delay(sck_period);
            ISP_SCK0;    /* SCK low */
            Delay(sck_period);
        }
        *res++ = rec_byte;
    }
}
智峰软件 9:53:11
//#define  ISP_XTAL      (GPIOA->DOUT | (1<<0))
#define  ISP_RST       (GPIOD->DOUT |= (1<<0))
#define  ISP_MOSI      (GPIOD->DOUT |= (1<<3))
#define  ISP_MISO      (GPIOD->DOUT |= (1<<2))
#define  ISP_SCK       (GPIOD->DOUT |= (1<<1))
//#define  ISP_ICP       (GPIOA->DOUT | (1<<0))
#define  ISP_RXD       (GPIOB->DOUT |= (1<<0))
#define  ISP_TXD       (GPIOB->DOUT |= (1<<1))

//#define  ISP_XTAL0      (GPIOA->DOUT & (~(1<<0)))
#define  ISP_RST0       (GPIOD->DOUT &= (~(1<<0)))
#define  ISP_MOSI0      (GPIOD->DOUT &= (~(1<<3)))
#define  ISP_MISO0      (GPIOD->DOUT &= (~(1<<2)))
#define  ISP_SCK0       (GPIOD->DOUT &= (~(1<<1)))
//#define  ISP_ICP0       (GPIOA->DOUT & (~(1<<0)))
#define  ISP_RXD0       (GPIOB->DOUT &= (~(1<<0)))
#define  ISP_TXD0       (GPIOB->DOUT &= (~(1<<1)))

#define  ISP_MISO_I     (GPIOD->PIN & (1<<2))

//#define  ISP_XTAL_D    GPIOA->PMD.PMD0
#define  ISP_RST_D     GPIOD->PMD.PMD0
#define  ISP_MOSI_D    GPIOD->PMD.PMD3
#define  ISP_MISO_D    GPIOD->PMD.PMD2
#define  ISP_SCK_D     GPIOD->PMD.PMD1
//#define  ISP_ICP_D     GPIOA->PMD.PMD0
#define  ISP_RXD_D     GPIOB->PMD.PMD0
#define  ISP_TXD_D     GPIOB->PMD.PMD1
智峰软件 9:53:38
io口部分操作与定义
10:04:57
成功发送文件“DSCF0685.avi”(86.36MB)。
   

V 10:51:50
你使用IO口的电平变化作为中断源的吗?IO口电平变化最快为7个时钟周期,这里要注意下
智峰软件 10:52:34
没有
V 10:53:24
IO口和USB是什么关系?
智峰软件 10:53:33

void enableprog(unsigned Rst,unsigned char speed)
{
    if(Rst)
        ISP_RST;
    else
        ISP_RST0;

    ISP_RST_D=1;
    ISP_MOSI_D=1;
    ISP_MISO_D=0;
    ISP_SCK_D=1;

    sck_period = speed;                   //&Euml;&Ugrave;&para;&Egrave;
}
智峰软件 10:53:41
没有关系
智峰软件 10:53:56
根据前面定义
智峰软件 10:54:15
只是使用普通io口而已
V 10:59:26
IO口模拟的SPI和AVR链接的吗?
智峰软件 10:59:42

V 11:00:17
然后把SPI的数据通过USB传输?
智峰软件 11:00:32

V 11:01:12
你有没有单独测试下SPI通讯是不是正常的呢?
智峰软件 11:01:32
模拟的
V 11:03:05
恩,我的意思就是你直接操作模拟的SPI,控制AVR读取数据,看是否正常。确定下是SPI通讯错误还是USB通讯错误
智峰软件 11:03:44
正常的,这块不用怀疑
智峰软件 11:04:18
你看到录像没有,是usb崩溃了
智峰软件 11:04:53
从上微机测试是23号错误
智峰软件 11:06:51
如果,芯片空与非空,模拟的spi只有一个地方不一样,就是miso这个线有出现低电平的情况,余下是完全一样的


智峰软件 11:08:01
如果是你说的spi通讯错误,在空芯片时是也会发生错误的,但现在是这种情况是不出错的
V 11:09:41
如果为非空,你是读取数据,还是只是用一个状态表示非空?
智峰软件 11:11:15
你看到我上面贴的函数吗
智峰软件 11:11:54
读出数据,就是放到缓冲,然后通过usb传给pc就结束了
智峰软件 11:15:43
你说的io口中断是不是芯片上的默认的,如何关闭?
V 11:16:10
IO口默认不开中断
智峰软件 11:16:28
那就不是这个问题
智峰软件 11:16:56
    uint8_t Alert=0;


    //    extern uint32_t SystemFrequency;
    SysTick_Config(SystemCoreClock/100);  /* Generate interrupt each 10 ms      */

    UNLOCKREG();

    SYSCLK->PWRCON.XTL12M_EN = 1;
    //SYSCLK->PWRCON.OSC22M_EN = 1;
    /* Waiting for 12M Xtal stalble */
    Delay(500);
    //    FMC->ISPCON.ISPEN = 1;

    /* Enable PLL */
    SYSCLK->PLLCON.OE = 0;
    SYSCLK->PLLCON.PD = 0;
    Delay(100);

    SYSCLK->CLKSEL0.HCLK_S = 2;
SystemCoreClockUpdate();
LOCKREG();

//    Delay(10);

    outpw((uint32_t)&GPIOA->PMD,0x00);
    outpw((uint32_t)&GPIOB->PMD,0x00);
    outpw((uint32_t)&GPIOC->PMD,0x00);
    outpw((uint32_t)&GPIOD->PMD,0x00);
    outpw((uint32_t)&GPIOE->PMD,0x00);


    GPIOA->DOUT=0x0000;
    GPIOB->DOUT=0x0000;
    GPIOC->DOUT=0x0000;
    GPIOD->DOUT=0x0000;
    GPIOE->DOUT=0x0000;

    SPEAK_D=1;
    SPEAKON;
    P5V_3V_D=1;
    P5V_3VOFF;
    POWER_D=1;
    POWERON;


    ISP_GRN_D=1;
    ISP_RED_D=1;
    ISP_GRNON;
    ISP_REDOFF;

    SpeakTime=20;
    Timer1.Count=SpeakTime;
    Timer1.Flag=1;

//    ADC_init();                           /* ADC Initialization                 */

    UsbHid();


智峰软件 11:17:38
初始化。只做这些事
智峰软件 11:30:43
我现在是没有办法了,不行,我准备采用bulk通讯方式了
智峰软件 11:33:10
我有不想让用户装驱动。所以,我现在有个想法,能否,模拟一个u盘设备,利用windows自带的驱动,进行读写,目前,上位机我还没有找到合适的方法来与nuc120 通讯
V 11:33:10
[自动回复]您好,我现在有事不在,一会再和您联系。
智峰软件 11:35:56
模拟 usb MassStorage ,然后通过读写 MassStorage 设备,来转换。不知你熟悉这块吗?给提个建议。就是,上位机如何打开MassStorage设备,并读写?
智峰软件 11:37:07
这种方式再有问题,只能放弃nuc了,我在这个上面耗了很多精力了。
V 11:54:56
你前面的方式不用了,换成U盘模式?
智峰软件 11:55:29
有这个想法
智峰软件 11:55:52
问题,解决不掉,就换个路子走
智峰软件 11:57:28
主要是想做出的产品,不需要用户安装驱动。所以选择,usb MassStorage 模式
智峰软件 11:58:11
现在的问题是上位机的程序,我需要重新写?以前的,上位机是成熟的
智峰软件 11:58:49
仅需小小改动就可以了。
智峰软件 11:59:37
上位机,重新来,工作量也是很大的
V 15:33:13
能否把你的USB中断函数发给我看下
智峰软件 15:36:37

/********************************************************************************************************//**
* @brief     USB Interrupt Service Routine
* @param[in] None
* @return    None
************************************************************************************************************/
void USB_IRQHandler (void)
{
uint32_t disr,ep,ep_state,i;
uint32_t usb_state,u32PacketType;

disr = (*((__I  uint32_t *) (&USBD->EVF)));                      /* Device Interrupt Status */
if(disr & EVF_FLD)
{
//uint8_t u8FLODET = USBD->FLODET.FLODET;
_DRVUSB_SET_EVF(EVF_FLD);
return;
}
else if (disr & EVF_WAKEUP)
{
USB_WakeUp();
#if     USB_WAKEUP_EVENT
if(USB_WakeUp_Event!= NULL)
{
USB_WakeUp_Event();
}
#endif
}
/* Device Status Interrupt (Reset, Connect change, Suspend/Resume) */
else if (disr & EVF_BUS)
{
uint8_t u8ATTR = *((__IO uint32_t *)(&USBD->ATTR)) & 0xFF;
_DRVUSB_SET_EVF(EVF_BUS);
if (u8ATTR & ATTR_USBRST)
{                    /* Reset */
_DRVUSB_ENABLE_USB();
USB_Reset();
#if    USB_RESET_EVENT

USB_Reset_Event();
#endif
}
else if (u8ATTR & ATTR_SUSPEND)
{                  /* Suspend */
USB_Suspend();
#if      USB_SUSPEND_EVENT
if(USB_Suspend_Event!=NULL)
{
USB_Suspend_Event();
}
#endif
}
else if (u8ATTR & ATTR_RESUME)
{                              /* Resume */
USB_Resume();
#if         USB_RESUME_EVENT
if(USB_Resume_Event!=NULL)
{
USB_Resume_Event();
}
#endif
}
//}
return;
}

#if USB_SOF_EVENT
/* Start of Frame Interrupt */

#endif

#if USB_ERROR_EVENT
/* NO error interrupt anymore, below code can be used
as example to get error status from command engine. */
/* Error Interrupt */
#endif

/* Endpoint's Interrupt */
else if (disr & EVF_USB)
{

    usb_state = _DRVUSB_GET_STS();

/* Control OUT Endpoint */
if (disr & EVF_SETUP)
{         /* Setup Packet */
            USB_P_EP[0](USB_EVT_SETUP);
}

    disr = (*((__I  uint32_t *) (&USBD->EVF)));                      /* Device Interrupt Status */

_DRVUSB_SET_EVF(disr&EVF_SETUP);

    for(i=0;i<USB_EP_NUM;i++)
    {
        if(disr & (1<<(i+16)))
        {
//             _DRVUSB_SET_EVF(1<<(16+i)&disr);
        ep = USBD->EP.CFG.EPT;
        ep_state = USBD->EP.CFG.STATE;
#if 1
u32PacketType = (usb_state >> (4+ i*3)) & STS_STS;
switch(u32PacketType)
{
case STS_IN_ACK: /* 000: In ACK */
     USB_P_EP[ep](USB_EVT_IN);
  break;
case STS_IN_NAK: /* 001: In NAK */
break;
case STS_OUT0_ACK:      /* 010: Out 0 ACK */
case STS_OUT1_ACK:      /* 110: Out 1 ACK */
             USB_P_EP[ep](USB_EVT_OUT);            
break;
case STS_SETUP_ACK:      /* 011: Setup ACK */
break;
case STS_ISO:          /* 111: Isochronous translation end */
break;
default:
             USB_P_EP[ep](USB_EVT_IN_STALL);            
break;
}
#else

if(ep_state == 0x02)
USB_P_EP[ep](USB_EVT_IN);
else
        USB_P_EP[ep](USB_EVT_OUT);            
#endif
            _DRVUSB_SET_EVF(1<<(16+i)&disr);
        }
    }
}
return;
}

智峰软件 15:37:51
这样吧,我将usb部分打包发给你
15:40:10
成功发送文件“myusbtest.rar”(23.00KB)。
   

智峰软件 15:40:50
我认为应该不是驱动问题,如果是,你怎能解释,上午和你说的那个现象
智峰软件 15:41:23
正常通讯,如果,芯片为空,我这从没出过错
智峰软件 15:42:32
要不,你那边提供个稳定的驱动,我试试,我需要usbhid 自定义模式的。芯唐例程,我没找到有
智峰软件 15:43:40
底层驱动是来源于keil,这个应该是非常健壮的,我只移植了与芯唐接口有关的硬件部分

出0入0汤圆

发表于 2011-8-21 10:14:43 | 显示全部楼层
上面出错的概率是,5v出错概率远大于3v,都是in报告数据出错,out报告不出错。

出0入0汤圆

发表于 2011-8-21 13:12:59 | 显示全部楼层
这个问题是一定要解决的,USB不然根本不能用!

出0入0汤圆

发表于 2011-8-21 13:30:38 | 显示全部楼层
上传测试结果。
左边那块板子使用100脚芯片,有问题,于是我想看看是不是芯片问题?就修改了芯唐的开发板,经测试暂没发现上面说的现象。

   于是可以权且下个结论,48脚芯片没问题,100脚的芯片有问题,具体结果,有待进一步确认,还要等芯唐工作人员的结果。



(原文件名:DSCF0686.jpg)

出0入0汤圆

发表于 2011-8-21 13:33:46 | 显示全部楼层
确认问题后,我做个软件让其读取1000次或者更多看看结果。

出0入0汤圆

发表于 2011-8-26 16:42:10 | 显示全部楼层
话说,我用新唐的官方例程,很多下到单片机里确实没有反应。网上又没有资料,搞得我很烦

出0入0汤圆

发表于 2011-8-27 23:15:56 | 显示全部楼层
回复【148楼】zsw3979
-----------------------------------------------------------------------
我是使用coocox,好用,对初学者,导航不错,例子可以用,有问题论坛可以解决。

出0入0汤圆

发表于 2011-9-2 09:59:31 | 显示全部楼层
回复【136楼】aabbccdd
-----------------------------------------------------------------------

我们做的板子

出0入0汤圆

发表于 2011-11-4 16:12:53 | 显示全部楼层
还没用过,不过很关注,据说是32位,不知有啥特色

出0入0汤圆

发表于 2012-5-31 15:23:12 | 显示全部楼层
不错,mark!

出0入0汤圆

发表于 2012-5-31 17:22:47 | 显示全部楼层
在 关注ST的 F0   哈哈

出0入0汤圆

发表于 2012-5-31 17:45:08 | 显示全部楼层
zhifeng 发表于 2011-8-21 13:33
确认问题后,我做个软件让其读取1000次或者更多看看结果。

zhifeng, 你那个BUG解决没有????

出0入0汤圆

发表于 2012-7-15 08:46:21 | 显示全部楼层
zsw3979 发表于 2011-8-26 16:42
话说,我用新唐的官方例程,很多下到单片机里确实没有反应。网上又没有资料,搞得我很烦 ...

zsw3979  我有自己写的非官方代码 可以发一份给你 互相学习

出0入0汤圆

发表于 2012-7-15 08:49:09 | 显示全部楼层
IMOK 发表于 2011-8-4 13:10
stm的M0芯片就是千呼万唤始不出来,要不然说不定用了stm的了

ST的M0,最低端的 大概多少钱钱啊?上次想申请个板子玩玩 可惜过了时间

出0入0汤圆

发表于 2012-7-30 16:28:50 | 显示全部楼层
这芯片我在用的时候发现一个问题,不知道怎么解决,代码是这个的: unsigned short int addr=0xaffa; char *pData=(char*)&addr; 结果在调试的时候,发现addr不等于0xaffa,但是pData指向的内容又是0xaffa.在原有&addr上-4(&addr-4)内容就正确了.也可以把addr定义为静态的或是不用&addr来取地址,内容也正确.看看楼主能不能帮忙解答一下.我怀疑是堆栈的问题.另外还有一个问题就是,用分散加载不行.搞不懂

出0入0汤圆

发表于 2012-8-13 08:25:21 | 显示全部楼层
我再次确定100脚的芯片确实存在我说的那个问题。就此问题,我又做了次pcb。其实,电路非常简单,就是usb通讯部分,可以肯定的排除pcb问题,也可以肯定的排除软件问题,因为同样软件在48脚芯片上非常稳定。

出0入0汤圆

发表于 2012-8-13 11:06:52 | 显示全部楼层
我想用事实说一下自己的感受:
1、我们现在使用的是:NUC120VE3AN
2、我曾经使用芯唐这款芯片,开发过:50套胶管剖分切割机,类似于:线号机一类的机械设备,只不过切割的是胶管。出厂前测试3个月,运行2年多,没有出现任何异常。
3、开发的印刷机控制器一个系列3种产品,主要使用的是PWM引脚的PCA捕获功能。8路捕获,可以接8个增量编码器,在测试的时候,发现温度低时不起振。经检查,晶振质量不行,于是更换49U长体宽温晶振,完美解决此问题。这种设备远销越南,以及国内一些包装印刷厂配套。

出0入0汤圆

发表于 2012-8-16 15:21:13 | 显示全部楼层
我是芯唐人。看楼主的发帖的倾向性,比较气愤啊

作为论坛老大,怎么能取这样有倾向性的标题、让人先入为主呢?
ARM官方的统计结果,新唐的M0,目前出货量在所有M0厂家中,全球最大。
性能差的话也不会有今天。

当然,拼的是性价比,任何芯片都有优势和不足。
挑一两个不足哪个芯片挑不出来呢。
相对于不足,优势更多吧,
稳定的供货、丰富的外设、选型、宽电压、性价比、完善的例程、专业的支持、
各大调试环境的友善支持、半卖半送的仿真、烧写工具、支持加密、限次的脱机烧写工具、
工规产品稳定度(非其他商业级别产品科比)。。。


而楼主却选这样的标题和倾向性。
其中若干楼大概是说好处的,被删除了。靠!
楼主将29楼说不好的重新贴于1楼。因为删除了帖子的关系,29楼变成了现在的15楼。靠!

注:前面很多另一方的言论都删除了,不硬气,现在反正死无对证。
21ic有一些人说某某的人品如何,我是不太相信的。但我坚信,能不能容许PK的声音,也是人品的体现。

出0入0汤圆

发表于 2012-8-16 16:31:25 | 显示全部楼层
503481182 发表于 2012-7-30 16:28
这芯片我在用的时候发现一个问题,不知道怎么解决,代码是这个的: unsigned short int addr=0xaffa; char *pD ...

这个问题开始我也疑惑呢。

跟Keil有关系,我测试过很多版本的Keil。
Keill 4.01,调试出现的变量,很多时候不对。
Keil 4.10, 4.20,有很多情况。
现在看起来Keil 4.50,情况好很多。

另外也跟优化有关系,开优化的代码,很多时候调试时看不到正确的值。
当然,程序运行的结果,是这样的。

为了验证此问题,我装了很多版本的Keil,用不同芯片/仿真器,以及软件simulator情况下验证,
最终发现此规律。这不是特定芯片厂商的问题啦。

总之,尽量用高版本的Keil,看最终的结果,别太依赖看到的变量的值(特别是开优化时)。

出0入0汤圆

发表于 2012-9-8 08:36:37 | 显示全部楼层
to:CrazyJohn 既然你是芯唐的人那就好办了,我现在,使用48脚芯片usb部分没有问题(28脚芯片我已试产了几百片,还是挺好的),使用100脚的就有问题(最基本的测试通不过,usb通讯有问题)。能不能帮助解决下。同样代码48脚没问题,100脚有问题

出50入0汤圆

发表于 2012-9-8 09:09:43 | 显示全部楼层
印象中 新唐 跟华邦有亲缘关系
貌似若干年前的51仿真器都是用华邦的芯片方案的。

出0入0汤圆

发表于 2012-11-17 12:33:19 | 显示全部楼层
plc_avr 发表于 2011-8-3 10:13
说实话,坛子里新唐的广告确实有点多,实际应用的相关资料少之又少,内置温度传感器未用过,ADC 12位顶多当 ...

你好~!我最近在搞M051,,在写温湿度传感器sht11的驱动。驱动是从51上移植过来的。现在主频是12M,,,IO口设置为准双向模式,,,结果一直读取不到数据。。。想请教您~!

出0入0汤圆

发表于 2012-11-17 12:42:57 | 显示全部楼层
plc_avr 发表于 2011-8-3 10:13
说实话,坛子里新唐的广告确实有点多,实际应用的相关资料少之又少,内置温度传感器未用过,ADC 12位顶多当 ...

另外,我也看了手册,,找不出,他的DATA Flash的默认值是多少?

出0入0汤圆

发表于 2012-11-17 14:28:13 | 显示全部楼层
zhengwending111 发表于 2012-11-17 12:42
另外,我也看了手册,,找不出,他的DATA Flash的默认值是多少?

SHT的程序很简单,改一下IO就可以了

出0入0汤圆

发表于 2012-11-18 09:09:21 | 显示全部楼层
SNOOKER 发表于 2012-11-17 14:28
SHT的程序很简单,改一下IO就可以了

我修改了IO,把IO配置为准双向,而且刚开始我用的12M的,没有分频,结果不行。。现在我改用12分频了,,,,还是不行。。。心里总有阴影,,出门都不痛快。。。还是解决不了。。

出0入0汤圆

发表于 2012-11-18 12:10:50 | 显示全部楼层
您好~!我上午又测试了一下,,,我要读温度,发送0x03之后,,,数据线一直为低,第九个时钟之后数据线还是不会释放~!

出0入0汤圆

发表于 2013-11-28 20:34:10 | 显示全部楼层
我用芯唐的nuc1XX系列、M05X系列、Mini5X系列都设计过产品,使用时间已近3年了,我也用过STM32103系列,简单谈谈我的使用感觉吧:
1、芯唐的ADC我用作电位器采样,电池采样等,12bit/10bitAD稍加滤波就可以达到10bit/8bit的比较稳定读数,温飘和时漂我没有测试。
2、芯唐的I/O口中断比STM32好用,特别是同一组I/O用于不同的中断源,且中断源是同步触发的都可以分别记录。用于周期测量很准确。IO口的翻转以前是7个机器周期,现在是4个机器周期(直接写寄存器方式)。
3、PWM使用没有问题。16位很好用,占空比和周期可以单独定义,STM32PWM之间周期会有关联,不是完全独立的。
4、SPI用中断方式根据参考例程就很容易搞定,硬件收发很爽。STM32也很爽。
5、I2C用硬件模式,也参考例程很容易搞定,且读写比STM32的I2c好用,芯唐稳定从不出错挂机,STM32的I2C不是那么容易用的。
6、多个定时器使用正常,片内的22M时钟用于115200串口通讯没有问题,可以放心用于某些低成本方案,芯唐和STM32都没有任何问题。
7、多个UART串口用中断方式工作于全双工,115200波特率正常。
8、芯唐的M0除了带有单周期乘法器外还带有硬件除法器,大家做计算时就会觉得很爽了!
9、芯唐的USB接口识别很快,STM32的USB不太好搞定,虚拟串口我是搞了半个月,且驱动有点挑操作系统。
10、芯唐的开发例程很好,且在不断更新,工具很齐全,一个小板下载升级调试都很方便,技术支持还不错,STM32的高手在民间。
11、芯唐的在线升级可以由用户设计代码选择多种接口传输,STM32除了USB和UART就没有那么容易选择了。
11、温度传感器和其它外设我没有用过,不做评论。
12、总体来讲芯唐的芯片数字电路部分还不错,使用比较人性化,模拟部分还凑合,从产品使用情况看,常温下的稳定性也们问题,要说缺点,就是功耗控制不太理想,不适合用于低功耗产品,刚开的发布会也推出了低功耗系列。
13、以上说的是我用过的大家不太熟悉的芯唐的部分功能的感受,STM32大家用的多很熟悉,优点我就不用多说了,纯属个人体会。
11、最后我觉得没有最好,只有最合适的!因此在不同的产品中用根据自己的需求选用最合适的IC,关键是对各个IC的全面了解。

出0入0汤圆

发表于 2014-2-13 21:55:33 | 显示全部楼层
正好项目里用到新塘的m0芯片,看看是不是有那么不济

出0入0汤圆

发表于 2014-4-19 08:44:31 | 显示全部楼层
正在玩新唐的,感觉还好,没那么恐怖

出0入0汤圆

发表于 2015-12-23 22:06:05 | 显示全部楼层
新唐的片子据说出厂测试前做的并不好

出0入0汤圆

发表于 2016-4-25 22:36:45 | 显示全部楼层
正打算评估新唐的MCU,看了帖子收获不少!

出0入0汤圆

发表于 2016-4-26 08:27:22 | 显示全部楼层
  连那个成天在论坛发小广告的  曾威  连发个小广告图片都那么不专业,还想它们能服务好???

出0入0汤圆

发表于 2016-4-26 08:30:51 | 显示全部楼层
没用过,不过要用也不敢了

出0入0汤圆

发表于 2016-7-5 10:28:34 | 显示全部楼层
NUC123 出现过不知道是软件问题还是怎么样,死机硬件复位无作用,真弄不明白

出0入0汤圆

发表于 2018-4-16 18:03:53 | 显示全部楼层
我也是吃了新唐的亏了,现在产品上了5000个,LDROM出现了问题,问厂家,说这个芯片17年的,这个有漏洞,有BUG,  瞬间泪奔,我的新客危急了

出0入0汤圆

发表于 2018-4-16 18:17:44 | 显示全部楼层
我在用一个新唐的另一型号的U,不确定因素挺多的。比如同一组GPIO,设置了其中一部分io为输出之后,如果其它io设置为输入的话就有些io的不能正常使用。

出0入0汤圆

发表于 2018-5-7 23:04:34 | 显示全部楼层
拿过新唐的m0测试板没有用过,用过的是新唐的4bit 单片机,做玩具的,没有什么准确度可言,语音玩具就那样

出0入0汤圆

发表于 2018-5-9 11:06:14 | 显示全部楼层
用过新唐的N76E003 和M0 Mini51系列,感觉性价比还是挺高的。用过的模块有 定时器 PWM 模拟比较器 串口  ADC  IO中断 其它功能没用过。

出0入0汤圆

发表于 2018-5-9 11:09:24 | 显示全部楼层
不过 M0 mini51 的数据手册对定时器PWM的描述,着实让我看了一两天才看明白。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-20 17:55

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表