侃一下 PGA 芯片的实质(没啥神秘的)

解释2个词, PGA D-IC 。 

1、PGA - Programed Gate Array (可编程的门阵列)  一种通用可改写逻辑关系的一种数字电子芯片

2、D-IC Digital Integrated Curcuit (数字集成电路) 一种专用逻辑的数字电子芯片

PGA 的实质 : 一个PGA(通过改写芯片内的工作逻辑-编程)就可以实现 一个或几个 不同逻辑的D-IC 芯片功能。

没啥神秘的, 不过掌握这个器件的使用(软硬兼施)社会上混口饭,还是可以的。 逗比一下

好处:

1、实现一个较为复杂的数字功能, 可以大大减少一个PCB板上的器件数量 ;

2、用PGA 做个通用功能板 ,这个板子,不用修改器件,改改程序就可以实现更多功能, 重用性好;

画个图 来 解释一下

另外, 特别的说一下,其实PGA是一类 可以编程 D-IC 那为什么不叫 P-D-IC呢? 你问我,我问谁,度娘、股沟,也没说。我特么也不知道 嘻嘻嘻。

对了 老说 FPGA “F”是啥  英文 “Field” - 汉语意思 “田地” “现场”, 在这里翻译成 “现场” 比较好 还是中文牛。 加了一个 F 就表示这个芯片已经经过现场应用了,还是可以的。

其实GA是实现 D-IC 可以编程的物理结构,如下图 红色小圈 就是可以通过仿真卡 弄成 “接上” 或 “断开”

这些圈圈的地方的 断开 连上 就形成标准的数字逻辑了。 (靠! 让我想起数字电路了,想起卡诺图化简了)   :) 

  • 10
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
STM32单片机(STM32F429)读写(8通道带PGA的24位ADC)ADS1256软件例程源码,可以做为你的学习设计参考。 int main(void) { uint8_t i; bsp_Init(); PrintfLogo(); /* 打印例程Logo到串口1 */ bsp_DelayMS(100); /* 等待上电稳定,等基准电压电路稳定, bsp_InitADS1256() 内部会进行自校准 */ bsp_InitADS1256(); /* 初始化配置ADS1256. PGA=1, DRATE=30KSPS, BUFEN=1, 输入正负5V */ /* 打印芯片ID (通过读ID可以判断硬件接口是否正常) , 正常时状态寄存器的高4bit = 3 */ #if 0 { uint8_t id; id = ADS1256_ReadChipID(); if (id != 3) { printf("Error, ASD1256 Chip ID = 0x%X\r\n", id); } else { printf("Ok, ASD1256 Chip ID = 0x%X\r\n", id); } } #endif ADS1256_CfgADC(ADS1256_GAIN_1, ADS1256_30SPS); /* 配置ADC参数: 增益1:1, 数据输出速率 1KHz */ ADS1256_StartScan(); /* 启动中断扫描模式, 轮流采集8个通道的ADC数据. 通过 ADS1256_GetAdc() 函数来读取这些数据 */ while (1) { bsp_Idle(); /* 空闲时执行的函数,比如喂狗. 在bsp.c中 */ /* 打印采集数据 */ for (i = 0; i < 8; i++) { int32_t iTemp; iTemp = ((int64_t)g_tADS1256.AdcNow[i] * 2500000) / 4194303; /* 计算实际电压值(近似估算的),如需准确,请进行校准 */ if (iTemp < 0) { iTemp = -iTemp; printf("%d=%6d,(-%d.%03d %03d V) ", i, g_tADS1256.AdcNow[i], iTemp /1000000, (iTemp%1000000)/1000, iTemp%1000); } else { printf("%d=%6d,( %d.%03d %03d V) ", i, g_tADS1256.AdcNow[i], iTemp/1000000, (iTemp%1000000)/1000, iTemp%1000); } } printf("\r\n"); bsp_DelayMS(500); /* 每隔500ms 输出一次数据 */ } }
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值